Рисуване на диамант (Perfect diamond)
Колеги,
тази задачка ми гърми на първия тест в judge-a и не мога да разбера защо. Някой да се е справил?
Това ми е кода:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _09PerfectDimond
{
class Program
{
static void Main(string[] args)
{
string line = "-*";
int n = int.Parse(Console.ReadLine());
if (n>1&&n<=1000)
{
Console.Write(new string(' ', n - 1));
Console.WriteLine("*");
for (int i = 2; i <= n; i++)
{
Console.Write(new string(' ', n - i));
Console.Write("*");
Console.WriteLine(string.Concat(Enumerable.Repeat(line, i - 1)));
}
for (int i = n - 1; i > 1; i--)
{
Console.Write(new string(' ', n - i));
Console.Write("*");
Console.WriteLine(string.Concat(Enumerable.Repeat(line, i - 1)));
}
Console.Write(new string(' ', n - 1));
Console.WriteLine("*");
}
}
}
}
Виж тази тема.
Условието не е неправилно.
Диагоналите са равни точно на n*2-1 символа.
Много лесно може да се сметне, че при n=1 ще трябва да има отпечатан 1 символ, и логично той да е *