Грешни тестове към задачи от изпит
Нека в тази тема се дават сигнали за ГРЕШНИ ТЕСТОВЕ към задачите.
В коментар по-долу ще посоча и първи такъв пример ...
Нека в тази тема се дават сигнали за ГРЕШНИ ТЕСТОВЕ към задачите.
В коментар по-долу ще посоча и първи такъв пример ...
Колеги, потвърждавам, че няколко теста на задачата "Problem 1 – Exam Schedule" от вариант 6 бяха грешни, както и авторското решение. За съжаление не успяхме да хванем този проблем навреме - по време на изпита. Причината беше, че прекалено много хора имаха същата грешка и получиха по 100 точки. Това ни даде увереност, че няма проблем със задачата. Никой не ми показа грешка на момента. Извиняваме се на всички засегнати от грешката!
Поправихме грешката и качихме вяно решение и верни тестове на сайта на курса.
Направихме rejudge по умен начин, така че да не ощетим никого: изтрихме всички проблемни тестове. Така който е имал 68 и му е вярно решението, ще има вече 100. Който е имал 100, ще продължи да си има 100 (защото само трием грешни тестове, без да добавяме нови на тяхно място). Можете да погледнете обновеното класиране на тази задача: http://judge.softuni.bg/Contests/Compete/Results/Simple/7.
Изпит на 12.04 (Събота) вечерта - Задача 1 .... убих около 3 часа в опити да изкарам повече от 68/100 ...
Сега прегледах грешните тестове - първите 2, които ми бяха грешни (тест №1 и Тест №2) реално са си грешни ... Нещо повече - и авторското решение НЕ е коректно ...
Проблемът не е в това, че една задача е грешна и може да бъдат махнати от оценяването грешните тестове - проблемът е че, времето отделено върху един нерешим проблем, е могло да бъде използвано за друго, т.е. пропуснатата полза е по-голяма от директната компенсация за грешката ...
Проверих и останалите грешни тестове № 8, № 10 и № 15 ... Същият случай - не е нужно да давам пример ...
Дори и наистина да е имало грешни тестове, времето което си отделил за да изкараш 30 допълнителни точки вместо да продължижи напред си е изцяло твой личен избор и няма кого да виниш за това че си забил на една задача докато не изкараш 100/100 вместо да решиш другите задачи които биха ти дали повече точки.
Щом за всеки изпит има поне един брой 500 точки, значи грешни тестове няма... има само грешен код. :)
ОК, да говорим конкретно:
Пример 1:
начално време: 12:00 PM (обяд)
добавено време: 12 часа и 0 минути
крайно време според тест №1: 12:00:PM (обяд)
ПРАВИЛЕН ОТГОВОР: 12:00:АM (полунощ)
Пример 2:
начално време: 12:00 PM (обяд)
добавено време: 23 часа и 59 минути
крайно време според тест №2: 11:59:PM (минута преди полунощ)
ПРАВИЛЕН ОТГОВОР: 11:59АM (минута преди обяд)
Съгласен съм с теб dentia на 100%. Ако ти е правилна логиката, изхода ще ти е коректен. На изпита имаше разминавания с примерен изход и доуточняване на условия, но Наков и асистенти показаха ниво и реагираха на момента. Доволен съм, че персонално се отделяше внимание на всеки, който имаше въпроси по условието на задача. Доброто разбиране на задачата е ключа към нейното решение.
Аз не мога да говоря за грешни тестове, но пък искам да кажа за нещо, което ми отне време по такъв подобен начин. Става въпрос за задачата Fruit Market от 14ти сутринта. Загубих доста време с мисълта, че домата е плод (на доста места в интернет така го пише), докато той трябвало да е зеленчук, добре че Наков каза по едно време, иначе нямаше да изкарам 100 точки на тая задача.
Добре бе хора как може някой да има 500 точки след като тестовете са грешни.. Не че нещо но смятате ли че е направил задачата с 3 каскадни IF ,които да проверяват дали има грешка за да влиза в правилния тип решение :D
В случая точно на тази задача забележете има 48 души с 100 точкови решения и то някои са от хора с по 200 точки.... Изобщо това твърдение ,че задачата е грешна е несериозно , най-малкото Теодор ги е тествал за всеки случай ,както и Наков..
Ами според мен 5 задача (Rolling Bits) от вечерния изпит на 12 Април също не е решена съобразно заложеното в задачата условие. В логиката използвана за получаването на примера в задачата "замръзналия" бит не просто се замразява, а се трие-изчезва в следащите операции. Моля за още мнения. Допускам нещо да не съм доогледал и се извинявам предварително, ако е така. Ето моето решение, което бе оценено на 30тина точки от системата и ми отне 3 часа да търся къде съм объркал.
using System;
class BitRoll
{
static void Main()
{
int n = int.Parse(Console.ReadLine());
int f = int.Parse(Console.ReadLine());
int roll = int.Parse(Console.ReadLine());
int result = n >> f;
int fBit = result & 1;
int izhod = 0;
//roll
int workN = 0;
for (int i = 0; roll > i; i++)
{
if (workN == 0)
{
workN = n;
}
int readBit = workN & 1;
int Temp = workN >> 1;
workN = Temp;
if (readBit == 1)
{
workN = workN | 262144;
}
}
//roll
//mask
if (fBit == 0)
{
int mas = ~(1 << f);
izhod = workN & mas;
}
else
{
int mask2 = 1 << f;
izhod = workN | mask2;
}
Console.WriteLine(izhod);
}
}
Втория ти цикъл, който чертае стените е с грешно условие, трябва да е:
for (int row = 0; row < (n - 1) / 2 - 1; row++)
а при теб е:
for (int row = 0; row < (n / 3); row++)
с тази корекция дава 100/100, това условие идва от там, че къщата трябва да е N реда, а покрива е (N+1)/2 реда.
Къщата ти е с един ред по-ниска от необходимото
Благодаря, не бях забелязала.
A, как попаднах на точната тема.
А са да ви питам, как ,аджеба, не минава нито един тест на това Nine-Digit Magic Numbers DotNetFiddle чудо? Очевидно е абсурдно вярно и с коректни отговори? Са верно, днес го направих, но на изпита го направих по 2 различни начина отново не хванах нищо.
Exam 10 April 2014 MorningПо условие трябва да работиш само с цифрите от 1 до 7. Твоя цикъл върти от 111 до 777, което включва и 600 например, а то не отговаря на изискването.
Хм. Верно бе. :D Виж, това ми е обягнало днеска точно. :)
Мисля, че има грешка в
от изпита в първият ден сутринтта. Където в нормален weekend се дава, че жоро играе два пъти, а в тестовете е дадено като един път.
Благодаря за ъпдейта.
За следващия изпит може да помислите за начин за репортване на подозрения за грешни тестове.
Все пак ние нямаме input/output данните, за да докажем грешните тестове.