Приветствуем, друзья)
Рады приветствовать вас на очередном раунде Codeforces #130 для участников Div. 2. Как обычно, остальные могут поучаствовать в нем вне конкурса. Некоторое время были проблемы для регистрации участников вне конкурса, но сейчас все в порядке)
Задачи для вас были подготовлены группой авторов в составе: Павел Холкин (HolkinPV), Николай Кузнецов (NALP) и Геральд Агапов (Gerald). Традиционно хотим поблагодарить Михаила Мирзаянова (MikeMirzayanov) за прекрасную систему Codeforces и Марию Белову (Delinur) за перевод условий. А также благодарим за помощь Александра Куприна (Alex_KPR) и Кунявского Павла (PavelKunyavskiy).
Распределение баллов вновь будет динамическим) Подробнее информацию об этом можно найти здесь.
Обращаем внимание, что все задачи будут даны в произвольном порядке.
Всем участникам мы желаем успехов, удачных взломов и высокого рейтинга!
UPD: контест завершен, несмотря ни на что, надеемся соревнование вам понравилось
UPD2: Авторы просят прощения за ситуацию с задачей Е. Так как задача оказала влияние на небольшое количество участников из див2 (22 участника), а решение первоначальной версии задачи не сильно отличается от измененной версии (в большинстве решений достаточно удалить пару строчек) в сторону упрощения решения, было принято следующее решение:
- для всех 22-х участников див2, кто имел проблемы с задачей E из-за условия и имел бы понижение рейтинга по результатам раунда, раунд будет нерейтинговым
- для всех остальных раунд рейтинговый.
UPD3: после пересчета оказалось, что таких участников 20, а не 22
UPD4: добавлен разбор задач
UPD5: взломы которые были признаны неудачными, но вывод для которых отличался от правильного пробельными символами, решено проигнорировать
Дождались)
Стоимость задач будет динамическая?
Если не написали, значит еще неизвестно. P.S логика.
Will it be dynamic scoring.?? If not what is the score distribution??
According to russian version of post — yes, it will.
hacked by hackers
Are you going to make all contests in future with dynamic score system? Or you just making experiments?
Is there anything bad with it?!
Yeah, I think this system need a lot of improvement, and now it looks very poor and unfair. Excuse me, developers, but it's my own opinion.
My feeling is that in dynamic scoring system there is not so many points distributed (I have no statistic for this, just a feeling)... And so, the coders' rating is decreasing for most of them :-(
I think it would be better if it's smoother (as discussed in comments on dynamic scoring blog).
On the other hand I like these dynamic scoring rounds, because you do not know the final score until the very end of the contest (system tests).
Судьба первых двух комментариев еще раз подчеркнула бессмысленную и беспощадную схожесть с хабром.
Пожалуйста, объясните.
Еще один пример в правке)
Сейчас будет еще больший прикол: второй коммент поста сольют, и станет не понятно, к чему был мой. И тогда сольют всех троих )
Из какого слова в задаче B нужно удалить две буквы, чтобы она стала на столько проста, как A? )
Восемь человек не знают, какие буквы удалить.
25 не знают, а 5 из них стыдятся этого.
15 стыдятся своего стыда.
Ага, а 24 стыдятся того, что стыдятся своего стыда? И сколько так можно продолжать?
Из какого?
Из слова "или". ...масти и достоинства.
Двое постыдились, что сами не додумались.
How to judge Problem A? I've found a solution which generate "WE ARE THE CHAMPIONS MY FRIEND " for the second example.
There are two spaces between ARE and THE, but it's still right. Is this a mistake? Or some other reason?
As per as I have found. Cf checks answers by tokenizing them. So whitespaces doesn't matter unless it is explicity mentioned as in some questions.
Ah... thanks... Kind of unhappy :( I spent 20 minutes and hacked nobody...
We have removed all such unsuccessful hacks.
Instead of just removing the unsuccessful hacks, people with the incorrect answer (differing in number and position of spaces) should have failed system test. As I mentioned earlier, many of the contestants may have put in additional time to get the right answer.
Мне кажется, что нужно засчитать оба понимания условия, а то как-то нехорошо.
А что поменяли?
Опредление брата
Кто может показать старое условие? у меня не сохранилось..
Если существует p-предок и не существует меньших.
а первый тест разве не делал понимание однозначным?
Нет
Ну это свинство. Я пол часа пялился в код, добавлял тесты и разные рантаймы на инварианты — чтобы оказалось, что авторы дали неправильное условие :(
Аналогично. Хотя то условие было немного лучше текущего.
Да, то условие делает задачу намного интереснее (а, я перепутал, решение таким же остается)
Я вообще в первый раз кодил подобное решение. vector — зло, deque рулит! Иначе с индексами задолбаешься.
... пусть и не менее боянистой.
Upd. http://neerc.ifmo.ru/school/archive/2011-2012/ru-olymp-team-russia-2011-statements.pdf задача K.
Ее можно вот тут сдать: http://mirror.codeforces.com/gym/100044
Изменения в коде действительно минимальные.
У меня изменилось только пару символов решения. Просто отнимаем не ответ на поддереве, а 1 вершину.
...на целый один оператор "минус".
Why my hack was wrong?
My attempt was like: WUBWUB...A, the expected answer is "A", the other guy solution prints " A" :/
Just like what i said above... That's very intetesting... i think the judge regard space as nothing...
You just got trolled by codeforces, they ignore white spaces.
i think the judger ignores all blanks, but i don't know if it is right
Then the problem statement should be: "Separate the words with one or more space."
I also lost points for unsuccessful hacks for similar cases. Also, I took much longer time to code and test for such cases during my submission. This way of evaluation is really unfair.
We have removed all such unsuccessful hacks.
Can anybody give me hint for problem B ? My code fail in preetest 9 :(
My solution too.
The state you use in your DP is described by the variable "sekarang", shouldn't the state also contain the last pile values? (int memo[100][52][52][52] instead of int memo[100] ...)
Well yeah, you were right. I missed it :(
This contest should be unrated. Before you change the statement of problem E it's impossible to AC
I partly agree with you, after the change of the statement , there was not enough time to solve it.
There exists a solution for both versions, which differs by only one line. But I also think the round should be unrated.
But it'd be unfair for those, who have spent almost two weeks in Div2 after the previous round and now have real chances to return back to Div1.
You're right, to solve the previous problem you just need to do a subtract operation. It's not so good to change statement in the last few minutes.
Another reason to make it unrated is that CF added 10 minutes to coding phase. It's true that system failed for ten minutes but it was 10 minutes of time to code and think for some others and in my opinion it's unfair. Let's wait and watch what they will do! :)
Can I have the time that the editorial be posted?
I solved it by DFS order and functionnal segment tree. First we get the DFS order in O(N) time Then we get the k-parent in O(logN) per query(by the same method like LCA) Now we should solve a interval question : how many Di in L..R It can be solved by functional segment tree easily
removed
How can some competitors solve problem E at their first attempt before the announcement?
Way to solve problem E:
I think this is a quick response to announcement contest, nice style :)
Hello, can you tell me how to solve problem E?
What is the wrong way to understand problem E? I didn't find the statement ambiguous and solved it.
At first statement suggested that for test
answer is 0 (as 4 and 3 are 1-brothers and not 2-brothers)
Считаю несколько странным сочетание динамической системы оценивания и участия 1-го (высшего) дивизиона вне конкурса: разве результаты участников 1-го дивизиона не будут слишком уж существенно влиять на ход рейтингового соревнования участников 2-го дивизиона?
Вроде в тот раз говорили, что баллы за задачи зависят только от div2 участников
Ну вот... Эпоха хэшей прошла =( Вот решение с хэшами:
http://mirror.codeforces.com/contest/208/submission/1927948
А вот что будет, если заюзать map:
http://mirror.codeforces.com/contest/208/submission/1932588
Ну, у меня решение де-факто тоже использует хеши (для HashMap). Так что я с тобой не согласен :).
В решение с хешами на мой взгляд дело в вычислении функции. У тебя hash=hash*hx+calc(s[i])=hash*hx+a*hx+b тоесть что для (hash,a,b) что для (hash-1,a+1,b) на след итерации hash будет одинаковым.
Why Compilation Error is counted as -50?
Please, give an example.
In this round I get -50 for this: http://mirror.codeforces.com/contest/208/submission/1924772
In final standings near my result for this problem is "+1" (after CE, I resubmit & got AC)
You have 486 for problem D. What is wrong?
Ups, my bad. Sorry
Кто-нибудь может помочь разобраться, почему в B заходит перебор? :) Интуиция подсказала, что нужно решать перебором, но доказать какую-нибудь оценку количества промежуточных вариантов не получается..
Пусть мы знаем N — кол-во оставшихся кучек, тогда мы знаем содержимое первых N-3 кучек и нам нужно только 3 числа (оба не превосходят 50) — номера кучек, где они были раньше.
итого состояний O(N^4)
Потому что есть конкретный тест на котором он долго работает. Он даже с отсечением по времени не проходит. Посмотрите, тесты уже должно быть можно скачать.
*Как можно к любому перебору не прикрутить запоминание, получив 4-ую степень?*
Черт. Надо учиться читать. То неправильное условие правильно понимаю, то еще что. Ты объяснил, почему он заходит с запоминанием. Если не запоминать, то бывают плохие тесты. Просто эти тесты разные для разных переборов. Скорее всего это недоработка. Мой перебор Gerald завалил.
Ну да, согласен.
Ну судя по описанию, DmitriyH тоже не считал повторно никакие состояния
Мой перебор: Пусть есть текущий набор состояний (set из vector-ов из string-ов). На каждом шаге (n-1) из каждого элемента этого set-a сгенерим новый set: объединение возможных состояний на основе допустимых переходов. Если в какой-то момент set пустой, то ответ NO.
Лучше дайте ссылку на код.
1931163
В данном случае сет просто эквивалентен запоминанию. Одно состояние не считается несколько раз, а их мало.
Вот и подошли к сути: почему мало состояний? :)
Ну потому что у всех твоих векторов префикс одинаковый, состояние определяется суффиксом, а различных суффиксов мало.
Рассмотрим состояние, в котором осталось не менее 3 стопок. Оно полностью определяется числом x и строками c1, c2, c3, где x -- кол-во оставшихся стопок, c1, c2, c3 -- верхние карты 3-х последних стопок. Остальные стопки не могли измениться. 3<=x<=52, ci принимают одно из 52 возможных значений.
Таким образом различных достижимых состояний существует не более 52^4.
Please help me out ! I'm new to codeforces enviroment. My solution id is 1931589 and want to know the full test case for which I got runtime error or bug in my solution ?
Thanks
I believe you can't view the full test case because it's too large, you can only see part of it.
Задача E же была один-в-один на этом ВКОШПе. Боян же.
Смешно) У меня за аналогичный пост -20 :)
Решение http://www.codeforces.ru/contest/208/submission/1925283. На тест типа BLABLABLA**WUB** выводит пробел в конце строки. Но оно AC, и я его таким тестом не смог сломать на туре. Сосбственно, семплы тоже должны его ломать.
Читай обсуждение выше, проверялось видимо стандартным чекером, игнорирующим вайтспейсы.
Такое могло быть, если авторы воспользвались стандартным чекером wcmp, который игнорирует все несоответствия по количеству пробелов. Если это так, то ещё одно ФУ в сторону контеста.
http://www.codeforces.ru/contest/208/submission/1932831 просто меняет WUB на три пробела и прекрасно проходит
Мы удалили все такие неудачные взломы по этому задаче.
I am wondering, if on this submission: http://mirror.codeforces.com/contest/208/submission/1925102 I saw the error, it should give runtime error, is there a chance that I try to hack it and it should result in runtime error and it does not? (I dont know how exactly runtime errors are thrown on windows..)
Слава динамической системе баллов. Когда я полчаса убил на B, а потом увидел, что за это время в комнате 10 человек решили D, я бы мог огорчиться, что решал не ту задачу, но...
Задача D не была бы задачей D без дин. системы и вы бы ее сразу решали
Все равно можно сказать, что человеку повезло насчет того, что он относительно быстро решил задачу стоимостью 2000 :).
Я же думал, что она простая, и что поэтому я ее обязан быстро решить ) Автотренинг, так сказать.
Странные какие-то контесты с динамической системой получаются(
Может стоит в таблице результатов сделать возможность показывать только людей вне конкурса?
Зачем?
Увидев задачу A, подумал, что контест Java-friendly: довольно забавно делать split по строке "WUB".
В C++ видимо надо менять эту строчку на пробелы, а потом использовать stringstream, кода не больше, но как-то там думать надо)
Когда меняет рейтинг?
Как оказалось(кхм), без включения мозга на этом языке тоже : 1932931
Да ну вас, юзаете кривость чекера по полной, это не труЪ
Собственно, это сдано было не на контесте и я даже не подумал, что это задачу можно тестить стандартным чекером
Авторы утверждают, что это не ошибка. И такой чекер стоял специально. Дефолтным считается, что whitespace не имеют значения, а обратное в условии явно не написано. Думаю, что взломы на этом все-таки снимут.
Ну значит у нас с авторами разные представления о прекрасном)
Глупо такое утверждать. Задача явно на технику работы со строками (какую-никакую, но всё же технику). Мне лично было очевидно, тем более после фразы "Слова при выводе разделяйте пробелом.", что с пробелами надо аккуратно работать.
Я знаю, что принято в большинстве случаев терминальные и ведущие пробелы обрубать (чтобы можно было в цикле выводить, например,
printf("%d ", A[i])
). С этим я по большому счёту согласен. Но внутренние пробелы в строке, казалось бы, никакого смысла проверять по-доброму нет. Мне кажется это неправильным.Я лично вообще за
ссалбоялся выводить даже пробел в конце строки — посимвольный чекер был бы ИМХО вполне закономерен.На финале и ведущие и терминальные пробелы могут не простить. В ПТЗ как-то была такая задача, у кучи команд были минусы как раз из-за такого вывода, в том числе и у нас. Конечно, есть точка зрения, что на контестах уровня CF ставить такие критерии очень жестоко. И я ее одобряю. Но если в один прекрасный день все начнут писать
for (int i = 0; i < n; i++) cout << a[i] << " \n"[i == n-1]
, то мне кажется, что в мире станет чуть больше добра.И говнокода.
Добра станет больше тогда, когда не будет таких задач в ПТЗ/гдебытонибыло.
Если дело не касаетсяобработки строк
Слова при выводе разделяйте пробелом. В единственном числе, а значит написано явно.
Python-friendly
print ' '.join(filter(None, raw_input().split('WUB'))
Если мы не хотим игнорировать пробелы)
На перле, оказывается, еще короче — 1932895 :)
Excuse me. . Can you update this blog so we can know this round will be rated or not ?
These problem was well designed.
Уважаемые организаторы, можно ли пересмотреть взломы по задаче А? Например, один из моих взломов (43803) приводил к ответу с лишними пробелами. Но в итоговой таблице он числится как неудачный.
Да, мы пересмотрели такие взломы. Все они были удалены.
Будет обновление рейтинга или нет?
Будет.
А что мешает таки пересудить задачу Е с чекером, который принимает оба понимания условия?
Странное какое-то решение, в течение 1 часа 50 минут в задаче E была бага, а раунд делают рейтинговым, как-то это неправильно.
Да еще и чекер в задаче A странный, казалось бы, в подобных задачах на обработку строк чекер надо делать строгим.
Ну для большинства тех, кому рейтинг пересчитают действительно без разницы ибо они не сабмитили. А если бы у них было решение в первоначальном понимании, они бы его сдавали ибо семплами не ловится.
Так что именно по этой части все логично
Странно делать нерейтинговым. Участников на кого это чисто гипотетически повлияло было 20, а по факту (тест 8 — первый большой), значительно меньше. Всего участников более 1300. То есть ожидаемое кол-во на кого повлияло — примерно 1%. Всех на кого влияло можно исключить из обновления рейтинга, если они хотят (кажется, что это эквивалентно посмотреть на знак изменения рейтинга). Я не вижу, чтобы жаловался кто-то из 1%. Или просто обоснованно кто-либо из Д2. Зачем делать анрейт для 99%? Есть только несколько Д1 участников вне конкурса, кто имеет отличное мнение.
Когда будет обновление рейтинга? Время уже 2 : 23 !
When it's done.
В Саратове только половина первого. :)
А в Монпелье вообще одиннадцати нет. И рейтинг обновили, что радует.
По-моему странное решение. Естественно сделать раунд рейтинговым, но почему бы не перетестить с двумя вариантами и не засчитать первое верное решение?
Если человек написал контест в плюс, это не значит, что он не потерял рейтинга на неправильном условии
Hi guys!
After reading the description of problem B, I was not quite sure about one part of the statement. After shifting one pile x onto another one (x-1 or x-3), is pile x effectively removed? in other words, are all piles renumbered after each move? still not clear to me after reading the statement several times.
Either way, I dont understand pretest 5: 7S 7S 4S 8H 4H (its answer is supposed to be "NO")
Assuming piles are removed: 7S 7S 4S 8H 4H => 7S 4S 8H 4H => 4S 8H 4H => 4S 4H => 4H.
Assuming piles are not removed: 7S 7S 4S 8H 4H => 7S 4S 00 8H 4H => 4S 00 00 8H 4H => 4S 00 00 4H 00 => 4H 00 00 00 00
So... I just dont get what I'm doing wrong here, in my opinion the answer should be "YES". Could someone enlighten me? Thanks!! :]
PS: Great contest, was fun... Thanks for you work guys!!
x
is always last. So, it's removed, but nothing renumberedWow. I understand it now, this statement mislead me big-time: "During one move, a player can take the whole pile with the maximum number x (that is the rightmost of remaining) and ..."
It totally sounded to me as if the maximum number of the pile to be put onto another one is x (of course, rightmost one)... and assumed every pile starting with pile 2 can be put on ones before. Not sure if this was intended challenge.
A more obvious statement wld have been: The pile x, whereas x is the maximum possible value and therefore represents the rightmost pile, can then be put on...
Firstly, I had the same idea as you, but then I've reread the statement, it goes "Let's number the piles from left to right, from 1 to x", further explaining what one can do with pile x.
Yes, you are certainly right. The statement is definitely correct. It could just be written in a way the intent is more obvious. ;)
Hi, When the editorial will be available?
There is russain one
Спасибо за контест.
Я за unrate.
Т.к. лично я убил уйму времени на придумывание-написание задачи Е до изменения его условия, когда как после изменения она оказалась уже решенной задачей на ВКОШПЕ.
По-моему не реально придумать ту задачу с ВКОШПа и не придумать эту%)
Для меня реально. Дело в том, что я вообще запутался с решением изначальной задачи, а измененную писал бы, можно сказать, не думая.
Ты-то свой анрейт получишь...
Вряд ли, решение не пройдет ни то понимание, ни другое
2:20 AM here and still wait for ratting
А может каждый сам выберет: делать рейтовым или нет? Как когда-то было...
Когда-то, это когда?
После 58-го раунда было решено, что каждый решит, будет раунд рейтинговым или нет. Вроде бы тогда с условием английским накосячили.
И начнется куча рандома, когда люди на которых не повлияло не хотят терять рейтинг(я не утверждаю, что так будут делать все)
Не понимаю, как на тебя, например, это повлияло. Если первую задачу за 2 часа ты не придумал, а во второй запутался?
Вы о чем?
Это не тебе отвечали.
Я понял, но 'Не понимаю, как на тебя, например, это повлияло. Если первую задачу за 2 часа ты не придумал, а во второй запутался?' это вроде про меня, только почему это я первую задачу за 2 часа не придумал?
Нет, это сказано именно Нуржану; под первой и второй задачами подразумеваются первая и вторая версии условия Е-шки.
Запутался я, решая ПЕРВУЮ версию. Может я не придумал начальную Е из-за того, что был в не очень хорошем настроении.
Я уже давно сделал вывод, что нечего писать контесты в не очень хорошем настроении (да и в не очень хорошем самочувствии и т.п.).
Ну не знаю, по-моему логично здесь считать, что нужно было решить ту задачу, что была изначально(ну и пофиксить), тогда все становится на своё место.
А повод для анрейта: было написано правильно но не засчитали.
Впрочем, наша дискуссия по-моему заходит в тупик, по сему предлагаю её завершить.
Хотелось бы отметить, что в новой записи условия задача технически несколько проще, если решается в офлайн. Не надо придумывать способ, как возвращать для комбинации два ответа на запрос "количество потомков на глубине x".
нет никакой разницы, решать первую задачу или вторую — они эквивалентны, поэтому врядли справедливо делать для Вас контест unrated
ok
Аналогично, см. выше — есть разница, она примерно в 10 строках кода. В новом (итоговом) случае я могу складировать pair<int,int> глубина и номер запроса для каждой вершины, в старом я должен еще складировать знак, проверять его и т.д. Это приводит к неприятному усложнению кода.
Сегодня обновится рейтинг, или можно ложится спать? UPD. Уже )
Sorry for the off — topic question, but I couldn't find any information about virtual participation. How can I join for a virtual competition, and will it be rated or less?
Read this.
По поводу задачи E хотелось бы небольшую метафору.
Представьте, что задача такая: "проверить на простоту число N <= 10^18". За 10 минут до конца приходит уточнение: число N имеет не более двух простых делителей. Решение старой задачи будет решать новую, НО у новой задачи есть решение, отличающееся удалением пары строчек: надо взять пару рандомных a, и почти наверняка проверка a^(N-1) == 1 (mod N) не выполнится.
Сядете ли вы писать задачу в первом варианте за пять минут до конца раунда? А во втором?
Спойлер: число с двумя делителями не может быть числом Кармайкла и проверка малой теоремы Ферма решает.
Можно ли откуда-нибудь взять тесты(большие тесты, которые полностью не отображаются при детализации попыток)?
Нет.
Можете попробовать такой тест:
случайные запросы.
Is there any solutions about this contest?
You should have read this first before commenting
Сейчас уже утро, и голова более соображает.
Я хотел спросить про задачу Е, до изменения ее, я толком не знал решения.
А после, знал, так как мы уже ее решили на вкошпе.
Скажите, пожалуйста, мое решение второй версии эквивалентно первой? Оно такое:
1. Для каждого уровня у нас есть список вершин, у которых этот уровень, причем вершины находятся с лева направо, то есть по времени входа.
2. И для каждого запроса я двоичным поиском ищу самого левого брата и самого правого из нужного списка.
3. А проверяю вершину на братство просто смотря на ее p-ого предка двоичным подъемом.
Спасибо.
Да, в разборе описано точно такое же решение. А ответы в разных версиях связаны простым соотношением: Ans1(x, k) = Ans2(x, k) — Ans2(x, k — 1).
Мне одному показалось, что рейтинг как-то странно пересчитался?
Почему?
Ну я написал ужасно, занял место ниже, чем моё место в отсортированном по невозрастанию рейтинга списке участников, при этом получил +11, к своему огромному удивлению.
Это нормально. Рейтинг tourist в отсортированном списке всегда первый, но "даже" за второе место он получает плюс. 10 участников с оценочной вероятностью проигрыша 0.1 дадут ожидание +1 место, не так ли?
Да и у Вас, как я вижу, за две решенные задачи, пусть и быстро, 1584 +66 = 1650. Странно.
Не за две решенные задачи, а за 164-е место.
И плюс в отсортированном списке я был где-то около 264-го места.
Насчёт взломов по A.
Если бы чекер проверял пробелы — решения, выводящие лишние пробелы, не проходили бы претесты.
Значит, если решения, выводящее лишние пробелы, можно ломать — они прошли претесты, и пробелы не проверяются.
Это вообще правильная логика, или я чего-то не понимаю?
Upd: а в претестах лишние пробелы точно будут, потому что они есть даже в примерах.
Она правильная по модулю того, что таких тестов могло не быть в претестах.
Да, но (я как раз добавил Upd. выше) даже в примерах будет и два пробела подряд, и лишние пробелы в начале и в конце.
По поводу задачи A те, кто ломал решения после претестов, конечно, не правы. Возмущение должно быть в другом — почему это не WA#1? Столь добрый чекер приводит к решению вида "заменить все WUB на пробелы и вывести", что совершенно неожиданно для этой задачи.
Why Codeforces English Version is not so updated like Russian version? In Russian version, problem-set analysis is already given, but in English version its not up yet.
google translate is making me sick..
:(
It's only the problemsetter's blame. When you're preparing contest (It takes at least several days!) you can easily find 30 minutes to write and translate analysis to English. When I was author, for me it seemed something necessary and obvious, and I don't understand, why such delays happen.
hacked by hackers
I am new on codeforces.com and how add friend??
hacked by hackers
Почему в задаче В написано что запрещено использовать лидирующие нули, хотя в первом семпле ответ с нулем в начале?
Кому не трудно не могли бы сказать как в Задаче Е (див. 2) в этом получилось 508?
5 4 32 1 18 41 47 38 7 43 43 48 23 39 40 23 26 39 33 5 36 31 29 7 26 47
Codeforces Round №**130** contest duration was also 130 (02h 10m=2*60+10=130m) :)
There is something wrong about problem E Blood Cousins. Look . If input is: 3 2 0 2 1 1 1 Output should be: 1 But this code will output 0.
There is something wrong about problem E Blood Cousins.
Look this .
If input is:
3
2 0 2
1
1 1
Output should be 1,but this code will output 0.