Софтуерно Инженерство
Loading...
+ Нов въпрос
nakov avatar nakov SoftUni Team Trainer 5456 Точки
Best Answer

Колеги, потвърждавам, че няколко теста на задачата "Problem 1 – Exam Schedule" от вариант 6 бяха грешни, както и авторското решение. За съжаление не успяхме да хванем този проблем навреме - по време на изпита. Причината беше, че прекалено много хора имаха същата грешка и получиха по 100 точки. Това ни даде увереност, че няма проблем със задачата. Никой не ми показа грешка на момента. Извиняваме се на всички засегнати от грешката!

Поправихме грешката и качихме вяно решение и верни тестове на сайта на курса.

Направихме rejudge по умен начин, така че да не ощетим никого: изтрихме всички проблемни тестове. Така който е имал 68 и му е вярно решението, ще има вече 100. Който е имал 100, ще продължи да си има 100 (защото само трием грешни тестове, без да добавяме нови на тяхно място). Можете да погледнете обновеното класиране на тази задача: http://judge.softuni.bg/Contests/Compete/Results/Simple/7.

7
garbuchev avatar garbuchev 18 Точки

Благодаря за ъпдейта.
За следващия изпит може да помислите за начин за репортване на подозрения за грешни тестове.
Все пак ние нямаме input/output данните, за да докажем грешните тестове.

1
jokerbg avatar jokerbg 46 Точки

Изпит на 12.04 (Събота) вечерта - Задача 1 .... убих около 3 часа в опити да изкарам повече от 68/100 ...

Сега прегледах грешните тестове - първите 2, които ми бяха грешни (тест №1 и Тест №2) реално са си грешни ... Нещо повече - и авторското решение НЕ е коректно ...

Проблемът не е в това, че една задача е грешна и може да бъдат махнати от оценяването грешните тестове - проблемът е че, времето отделено върху един нерешим проблем, е могло да бъде използвано за друго, т.е. пропуснатата полза е по-голяма от директната компенсация за грешката ...

9
jokerbg avatar jokerbg 46 Точки

Проверих и останалите грешни тестове № 8, № 10 и № 15 ... Същият случай - не е нужно да давам пример ...

3
Fleshian avatar Fleshian 378 Точки

Дори  и наистина да е имало грешни тестове, времето което  си отделил за да изкараш 30 допълнителни точки вместо да продължижи напред си е изцяло твой личен избор и няма кого да виниш за това че си забил на една задача докато не изкараш 100/100 вместо да решиш другите задачи които биха ти дали  повече точки.

-1
dentia avatar dentia 362 Точки

Щом за всеки изпит има поне един брой 500 точки, значи грешни тестове няма... има само грешен код. :)

1
jokerbg avatar jokerbg 46 Точки

ОК, да говорим конкретно:

 

 

Пример 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 (минута преди обяд)

 

 

7
rosenrusev avatar rosenrusev 175 Точки

Съгласен съм с теб dentia на 100%. Ако ти е правилна логиката, изхода ще ти е коректен. На изпита имаше разминавания с примерен изход и доуточняване на условия, но Наков и асистенти показаха ниво и реагираха на момента. Доволен съм, че персонално се отделяше внимание на всеки, който имаше въпроси по условието на задача. Доброто разбиране на задачата е ключа към нейното решение. 

2
Samuil.Petrow avatar Samuil.Petrow 1551 Точки
За конкретния случай не мога да коментирам, но иначе не винаги е така, в Telerik Academy на C#2 на задача с бройни системи се случи единият тест да превърта и всеки, който е използвал Math Class-a вместо да си напише собствен алгоритъм за смятане изгаряше с точките, а реално решението му беше правилно. В последствие промениха теста и всичко си дойде на мястото.
3
gngeorgiev avatar gngeorgiev 90 Точки

Аз не мога да говоря за грешни тестове, но пък искам да кажа за нещо, което ми отне време по такъв подобен начин. Става въпрос за задачата Fruit Market от 14ти сутринта. Загубих доста време с мисълта, че домата е плод (на доста места в интернет така го пише), докато той трябвало да е зеленчук, добре че Наков каза по едно време, иначе нямаше да изкарам 100 точки на тая задача.

1
DJilanov avatar DJilanov 140 Точки

Добре бе хора как може някой да има 500 точки след като тестовете са грешни.. Не че нещо но смятате ли че е направил задачата с 3 каскадни IF ,които да проверяват дали има грешка за да влиза в правилния тип решение :D

 

В случая точно на тази задача забележете има 48 души с 100 точкови решения и то някои са от хора с по 200 точки.... Изобщо това твърдение ,че задачата е грешна е несериозно , най-малкото Теодор ги е тествал за всеки случай ,както и Наков..

4
nakov avatar nakov SoftUni Team Trainer 5456 Точки
Честно казано и аз се заблудих по тази логика. Има много хора с по 500, но тестовете на Exam Schedule задачата бяха сгрешени и не открихме по време на изпита.
3
nakov avatar nakov SoftUni Team Trainer 5456 Точки
Има ли грешки по други задачи? Заради тази грешка (Exam Schedule) бавим класирането с 3-4 часа вече, но държим да сме максимално коректни. Ако имате други оплаквания от тестовете, моля пишете сега ... или замълчете за цял живот (както се казва на сватба).
12
anatoli_asenov avatar anatoli_asenov 0 Точки

Ами според мен 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);
}
}

0
sety.stoyanova avatar sety.stoyanova 4 Точки
Здравейте.
бихте ли ми казали защо на тази задача от изпита ми излизат 0 точки, а тя работи.(House12.04. сутринта) , показах я и на Владимир Георгиев и той каза че ще провери. Входните тестове ми бяха верни и после на всичко показваше, че е грешно.
Моля ако някой мисли че  е грешна да ми каже къде точно.
 
using System;
classHouse
{
staticvoid Main()
{
int n = int.Parse(Console.ReadLine());
Console.Write(newstring('.', (n / 2)));
Console.Write('*');
Console.Write(newstring('.', (n / 2)));
Console.WriteLine();
int outerDots = (n / 2) - 1;
int innerDots = 1;
for (int row = 1; row < ((n+1)/2)-1; row++)
{
Console.Write(newstring('.',outerDots));
Console.Write("*");
Console.Write(newstring('.', innerDots));
Console.Write("*");
Console.WriteLine(newstring('.', outerDots));
innerDots += 2;
outerDots--;
}
Console.WriteLine(newstring('*', n));
int outDots = (n / 4);
int innDots = n - 2 * (n / 4) - 2;
for (int row = 0; row < (n / 3); row++)
{
Console.Write(newstring('.', outDots));
Console.Write('*');
Console.Write(newstring('.', innDots));
Console.Write('*');
Console.WriteLine(newstring('.', outDots));
}
Console.Write(newstring('.', (n / 4)));
Console.Write(newstring('*', n- 2 *(n / 4)));
Console.WriteLine(newstring('.', (n / 4)));
}
}
0
anilak avatar anilak 28 Точки

Втория ти цикъл, който чертае стените е с грешно условие, трябва да е:

for (int row = 0; row < (n - 1) / 2 - 1; row++)

а при теб е:

for (int row = 0; row < (n / 3); row++)

с тази корекция дава 100/100, това условие идва от там, че къщата трябва да е N реда, а покрива е (N+1)/2 реда.

1
jokerbg avatar jokerbg 46 Точки

Къщата ти е с един ред по-ниска от необходимото

1
sety.stoyanova avatar sety.stoyanova 4 Точки

Благодаря, не бях забелязала.

0
charlike avatar charlike 113 Точки

A, как попаднах на точната тема.

А са да ви питам, как ,аджеба, не минава нито един тест на това Nine-Digit Magic Numbers DotNetFiddle чудо? Очевидно е абсурдно вярно и с коректни отговори? Са верно, днес го направих, но на изпита го направих по 2 различни начина отново не хванах нищо.

Exam 10 April 2014 Morning
0
anilak avatar anilak 28 Точки

По условие трябва да работиш само с цифрите от 1 до 7. Твоя цикъл върти от 111 до 777, което включва и 600 например, а то не отговаря на изискването.

1
charlike avatar charlike 113 Точки

Хм. Верно бе. :D Виж, това ми е обягнало днеска точно. :)

0
dimitarnik avatar dimitarnik 93 Точки

Мисля, че има грешка в 

Problem 1 – Joro, the Football Player

от изпита в първият ден сутринтта. Където в нормален weekend се дава, че жоро играе два пъти, а в тестовете е дадено като един път. 

 

 

0