Sunglasses - некоректно оценяване от Judge
Това е кодът ми за Sunglasses.
using System;
class Sunglasses
{
static void Main()
{
int n = int.Parse(Console.ReadLine());
int width = 5 * n;
char[,] sunglasses = new char[width, n];
for(int i = 0; i<2*n; i++)
{
sunglasses[i,0] = '*';
sunglasses[i, (n - 1)] = '*';
}
for (int i = 0; i < n; i++)
{
sunglasses[0, i] = '*';
sunglasses[(2*n - 1), i] = '*';
}
for (int i = (width-1); i>=3*n; i--)
{
sunglasses[i, 0] = '*';
sunglasses[i, (n-1)] = '*';
}
for (int i = 0; i < n; i++)
{
sunglasses[3*n, i] = '*';
sunglasses[width-1, i] = '*';
}
for(int i=1; i<(2*n-1); i++)
{
for (int j = 1; j < (n - 1); j++)
{
sunglasses[i, j] = '/';
}
}
for (int i = (3*n+1); i < (width - 1); i++)
{
for (int j = 1; j < (n - 1); j++)
{
sunglasses[i, j] = '/';
}
}
for (int i = 2 * n; i < 3 * n; i++)
{
sunglasses[i, (n / 2)] = '|';
}
for(int j = 0; j<n; j++)
{
for(int i = 0; i<5*n; i++)
{
Console.Write(sunglasses[i,j]);
}
Console.WriteLine();
}
}
}
На конзолата излиза перфектно. В системата за оценяване ми отчита грешка. Там някак си "сплесква" двете стъкла едно до друго и рамката стърчи в дясно.
Моето обяснение е следното - не задавам никакви стойности на char масива за разстоянието между стъклата и съответно системата им дава стойност null. null се печата като празно пространство или интервал в конзолата, но някак си judge системата не го възприема даже като празно пространство и трупа едно върху друго.
В случая смятам, че това е грешка на системата. Има логика понеже null не е интервал, но самият факт, че дава различен аутпут от конзолата, е проблем. За домашните както и да е, но ми е интересно какво би се случило при подобна ситуация на изпита. Има ли вариант да поискаме преразглеждане на точките ни от дадена задача?
Всъщност, долния си пост го писах като допълнение на предния ми, без да знам, че и ти си ми писал. Просто си постнал преди мен.
Все пак искам да ти благодаря за отговора и помощта. Явно различните системи тълкуват null по различен начин и печатат различно. Добре е, че на изпита можем да въведем кода няколко пъти. Така ще се предпазим от подобни глупави грешки.