Грешно зададени условия

При решаване на задачи за упражнения в сайта, забелязах разминаване между описанието на задачата /description/ и търсеният отговор. Примерно на задача “Rotate list” /C#/ е записано “Output :On the only line of output, print the numbers separated by a space.”

Всъщност когато изходният резултат е формиран с празно място между стойностите /separated by a space/ както е описано в заданието - Системата оценява резултата като грешен.

Когато изходният резултат е форматиран със запетайка между стойностите - системата дава два варианта :

  • при формат char на разделителната запетая, отново връща грешка.

  • Едва когато формата е със запетайка - форматирана като “string” - тогава системата отчита правилен отговор.

Ако задачите са с грешно поставено условие, на каква база ще бъде извършвана оценката изпита?

Също така това “отгарване” на търсеният резултат ни губи доста време, което няма как да се компенсира.
В конкретния случай, бързо може да се хване къде е проблема, но не всеки път се намира бързо.

Здравей Марин,
Благодаря, че ни съобщи за тази нередност. Условието на задачата е оправено.

image

Независимо от какво естество е проблемът, умението за бързо намиране на правилно решение е едно от най-високо ценените качествата във всеки, който се занимава с разработка на софтуер.
Разгледах решенията ти и ми хареса, че си достигнал до правилното решение изключително бързо.

image

Един от начините за намалянето на броя догатки е винаги да четеш грешката, която дава системата.

На първия си submission си получил Wrong Answer (WA | C#), защото си се водил от условието, в което, в случая, е имало грешка и си използвал Console.WriteLine(string.Join(" ", array));

На следващия си submission си получил Compilation Error (CE | C#), защото си използвал Console.WriteLine(string.Join(',', array));.

По-детайлно изследване на съобщението за грешка дава насоки какво и къде да бъде променено.

/tmp/tmpi1Nv3b/00404rotatelist.cs(39,38): error CS1502: The best overloaded method match for string.Join(string, params string[]) has some invalid arguments

/tmp/tmpi1Nv3b/00404rotatelist.cs(39,43): error CS1503: Argument #1 cannot convert 'char' expression to type 'string'

Надявам се да ти е било полезно и отново благодаря, че ни писа.

Поздрави,
Кирил

2 Likes