3. Maximal Sum
Здрвейте,
Не мога да открия грешката си , поради която с този код Judge ми дава 60/100.
https://pastebin.com/q6mt4cb2
Здрвейте,
Не мога да открия грешката си , поради която с този код Judge ми дава 60/100.
https://pastebin.com/q6mt4cb2
Здравей,
За да има някаква стойност отговора, ще опиша примерни стъпки, с които judge да помогне определянето, коя част от решението е проблемна.
При runtime error можеш да намериш къде е грешката като пускаш решения с прекъсване на програмата постепенно от края към началото, докато грешката в judge не изчезне. Например с
if (1 == 1)
{
return;
}
Ако грешката е в цикъл, за да не прекъсне при първото завъртане, може да обграждаш отделните части в try catch.
В конкретния случай след първия цикъл с първия метод грешката я има. При прекъсване преди първия цикъл грешката я няма.
След това с втория метод обграждаш различните части от кода, които се изпълняват в цикъла.
Грешката изчезва при сплитването и парсването към int с:
for (int row = 0; row < rows; row++)
{
int[] array;
try
{
array = Console.ReadLine()
.Split()
.Select(int.Parse)
.ToArray();
}
catch (Exception ex)
{
return;
}
for (int col = 0; col < cols; col++)
{
matrix[row, col] = array[col];
}
}
Което означава, че най-вероятно се подават повече празни пространства.
Променянето на split-a оправя и проблема.
Променено: https://pastebin.com/QXyz2mR0
Много ви благодаря за изчерпателния отговор :) . Разбрах го