Задачата решена, програмата работи, Judge системата знае само един начин на решаване. А на изпита?
Здравейте.
Задачата решена, програмата работи, но Judge системата има много точки по които не се съгласява.
Zero test #1 (Correct answer)
The zero tests are not included in the final result.
Time used: 0.000 s
Memory used: 7.68 MB
Zero test #2 (Correct answer)
The zero tests are not included in the final result.
Time used: 0.015 s
Memory used: 7.70 MB
Аз имам само 60 / 100 точки защото съм писала решението без да гледам обясненията и явно моят начин се различава от този въведен като правилен в Judge.
Но точките ми трябват.
Аз отделих време да решавам задачата сама. А сега трябва и да променя решението защото ми трябват точките?
Целта е да си имаме напълно еднакъв начин на мислене? Едни и същи недостатъци?
Да кажем, че не е фатално, научили са ме да не ми пука за оценката ако аз знам, че знам повече отколкото показва тя. :)))
Тези точки се броят и се имат предвид само до Fundamentals, нали? След това броенето нали започва от нулата?
Но съм притеснена във връзка с изпита.
Там решенията дали ще бъдат оценени от истински хора, а не само от система, тъй като постоянно по задачите има неясни /нелогични и неинтуитивни условия и някои от нас пишат по-накратко, други пишат по- нашироко...
Съгласявам се.
9. Световен рекорд по плуване
Иванчо решава да подобри Световния рекорд по плуване на дълги разстояния. На конзолата се въвежда рекордът в секунди, който Иванчо трябва да подобри, разстоянието в метри, което трябва да преплува и времето в секунди, за което плува разстояние от 1 м. Да се напише програма, която изчислява дали се е справил със задачата, като се има предвид, че: съпротивлението на водата го забавя на всеки 15 м. с 12.5 секунди. Да се изчисли времето в секунди, за което Иванчо ще преплува разстоянието и разликата спрямо Световния рекорд.
Когато се изчислява колко пъти Иванчо ще се забави в резултат на съпротивлението на водата резултатът трябва да се закръгли надолу до най-близкото цяло число.
Вход
От конзолата се четат 3 реда:
Изход
Отпечатването на конзолата зависи от резултата:
Резултатът трябва да се форматира до втория знак след десетичната запетая.
Решение:
double recordSec = double.Parse(Console.ReadLine());
double distanceMeters = double.Parse(Console.ReadLine());
double secondsOneMeter = double.Parse(Console.ReadLine());
double speedFinal = (secondsOneMeter*distanceMeters) + (Math.Floor(distanceMeters/ 15) * 12.5);
if (recordSec > speedFinal)
{
Console.WriteLine($"Yes, he succeeded! The new world record is {speedFinal} seconds.");
}
else
{
double lostBy = speedFinal - recordSec;
Console.WriteLine("No, he failed! He was {0:f2} seconds slower.", lostBy);
}
Благодаря :).
За целият код - Pastebin paste :https://pastebin.com/YnUWdF9X
Да, има само един начин да се реши задачата - да се прочете условието и да се спази.
Условието гласи: " Резултатът трябва да се форматира до втория знак след десетичната запетая. "
Решението в случая с "Yes" обаче гласи:" Console.WriteLine($"Yes, he succeeded! The new world record is {speedFinal} seconds."); "
Поправено:
Console.WriteLine($"Yes, he succeeded! The new world record is {speedFinal:f2} seconds.");
100 точки.
За мен това условие важеше само за вторият резултат. :))))