Добрый вечер!
Рад всех приветствовать на 58-м раунде. Задачи к сегодняшнему контесту готовили коллективы команд Orel STU и NNSU.
Задачи тура будут посвящены забавным жизненным ситуациям: вы встретитесь с самым суровым преподавателем в мире, вернётесь в средние века, разрешите противоборство крупных IT-компаний, выпустите Вселенское Зло из Большого Адронного Коллайдера и решите проблему червяка Арни, про которого обычно говорят: "Арни огорчает твой жим". =)
Спасибо коллективу Codeforces, который помог подготовить предстоящий контест.
Надеюсь, что раунд вам понравится! Удачи!
К сожалению, раунд прошёл не так гладко, как хотелось бы. В задаче A русское условие оказалось более полным, чем аналогичное на английском языке. Мы приносим извинения за эту промашку.
Подведены результаты контеста. И снова Геннадий одержал! =)
Спасибо всем, кто участвовал в раунде!
UPD. Ура! Стали ходить письма о комментариях!
UPD2. 2Alex. Отлично! :-)
Dont worry dude! , The problems were really nice.
I am waiting for nice editorials .
(although I messed up with prob. 1 too! ;) )
its so unfair :(
But I lost both of them and god crazy, and so ... :D
Мне вот интересно, как некоторые "додумались" до правильного решения до того, как пришел клар о том, что условие неверное.
Прикрутить "3 пальца" к начальному варианту условия - это надо иметь хорошую фантазию)
А... Блин) Вот обидно) Зато сразу видно, сколько народу открывают на англ.
Если бы открыл русский - было бы еще на 500 балов больше в итоге:(
UPD. Да, устраняя разночтение для моего поста: у меня то настроение не испортилось, сам себе дурак - надо было внимательнее читать, тоже иногда полезно. Я про испорченное настроение англоговорящих других участников. Что, в прочем, не умаляет значения моего ИМХО. Ловить участников на кривом прочтении - не очень хорошо. Хорошо, например, на подводных камнях. Ну, еще раз добавлю, что это мое ИМХО.
P.S. Я за Unrated Contest. Даже если для меня, как русскоязычного, все было корректно и контест я слил - я не буду давать преимущества тем, что сделал много хаков из-за кривого английского условия.
jiong。
there must be some to adjust that ...in ratings...like not rating the first one..and calculating the points for rest of the question , ofcourse reducing the time of contest as well while calculating.
Lets see what happens.
Can anyone suggest some website to learn Russian .
It would have helped me today .
And is it tough ?
1 50000
ababababababab...
Is that really correct from a problem statement?? My program got TLE on this hack because it was expecting an additional one non-empty line.
Is that really correct from a problem statement??
Mine generator has made
1 50000
abab...
baba... (150000 symbols)
Thank you for the reply :)
However, the future codeforces system should write tests in the form you have written in your comment.
Sorry for my hack) Be more attentive ;)
For example,
"That is, they are comfortable when between any two girl's fingers there is a boy's finger."
I believed that the boy can't put more than one fingers because of this statement...
Maybe it should be "at least one finger"?
Correct! , Because of that I made mistake!!
Когда написал решение, искал строчку об этом в условии.
И что тут не понятно?
И не всегда спиной)))
Кто готовил контест и почему так плохо?
Жалко, конечно, что такой fail. Но что ж теперь поделать.
Давайте еще контест. Только чтобы все было как надо. Исправляйтесь.
very bad and long statements problems (hard to be understood)
How can it be rated ???
The mistake in problem statement was very great and can't be solve with this decision.
That is, they are comfortable when between any two girl's fingers there is a boy's finger.
Видимо в раунде получилось, что если подумал об условии, то не сдал, иначе - сдал
А может просто засчитать раунд только тем у кого от этого рейтинг повысится и не разводить демократию?
З.Ы. А кто-нибудь знает простое решение в С (без того чтобы честно все попересекать)?
First of all , Just removing points for hacking doesnt , account for all those things that could have happened and that has happened.
REMEMBER "Butterfly Effect" .
or "Chaos Theory" .
So, If you want to rate , plz take "OTHER" things into considerations ...and balance the ratings.
Otherwise don't rate.
The problems were nice, though.
Обращаю ваше внимание, что все результаты взломов по задаче A будут аннулированы. Вы не получите свои +100/-50 очков за взломы по этой задаче.
Это абсолютно нелогично, ИМХО. Далеко не все взломы не состоялись бы, если бы условие сразу было правильным.
ну тогда те кто выбрали не рейтинговый вариант они, конечно, не будут учитываться при перерасчете рейтинга других участников, ИМХО изменение рейтинга будет более чем неадекватным
UPD: предлагаю менять рейтинг всем(без учета взломов А) или не менять вообще!
The problems were really nice. It would be sad ending of a good contest if it is unrated.
Recently, the problems statement are so hard to understand!
These difficult statement and complex story has no significance at all.
Please express the questions with an easy way.
Thanks a lot!
For problem C, I can only understand the problem after reading the output specification. (And, I can understand the problem by *JUST* reading the output specification.)
you know that after locking any problem , you cant submit problem again
Думаю это сложно отследить... условия доступны даже анонимусам. Тогда лучше уж разрешать голосование только тем, у кого был взлом его решения по задаче A (ну или второй вариант - людям из не рускоязычных стран). Но всё равно в любом варианте найдутся недовольные :)
All results of hacks of problem A will be annuled. You do not take you +100/-50 points for each hack of this problem.
Good One!?!
If one chooses to have the round rated for them, on what basis will the new rating be calculated? I mean, will it take into account the performance of all contestants, or just the ones who have also agreed to be rated? In the latter case, the rating can be quite skewed/random, because there will be no poor performers in the group of people who agree to be rated. So I think the first case is the way to go.
How can we know if we should want to be rated? ;) Will our possible rating be calculated and presented to us?
Also, if so, why not just raise ratings for exactly those contestants who have the new rating higher than the old one?
I think it's up to the organizers to decide. If I were them, I would make the round unrated without any hesitation (and announce that 15 minutes into the contest, as soon as it became apparent that all hell is going to break loose with the hacking and what not).
However, if the organizers decide that the round will be half-rated, I don't expect many people to choose to have their rating lower, yet unbiased.
Hmm..., I rate this site as high as TopCoder , So I guess, making it totally unrated would be good descision.
Because, allowing people to choose to be rated, seems little odd
and little uneasy when the reputation of this site comes in mind.
Not rating this will not affect anything, we will say just a bad day...
scanf("%s", line);
int len = strlen(line);
и замены в двух местах strlen(line) на len, ваше решение прошло за 60ms. :-)
Так да.) Для меня это дефолтная оптимизация.
А вообще вчера в этой задаче я сначала считал количество, сколько раз надо прибавить длину строки, а когда циклом по строке доходил до конца (/*while( s[i] )*/), прибавлял этот count*i.
количество вызовов strlen уменьшится на 1?наблюдается действительно значительное улучшение. Спасибо, учту в будущемДавайте поиграем.
И правда, если в дефайне оставить strlen(line), то решение проходит (кстати, какой хороший дефайн! надо заюзать)).
Но если вот тут его оставить
if (f1==-1 && f2==-1) f += strlen(line); else
то получаем TL, предположительно на тесте
1 100000
a[100000 times]
b[100000 times]
if you ignore hacks on A
> тестировать и хакнутые решения
В каком порядке тестировать?
Прикол в том, что во время тестирования тестсет будет расти и уже будет сложно понять прошли ли предыдущие решения этот тестсет или нет.
А вообще Вашу идею я понял, но вот над нормальной реализацией надо еще подумать...
Это был апгрейд арены году в 2007-ом. Пока это было не так, мы ждали результатов в арене по часу. Теперь ждём почти только того, чтобы админы удостоверились, что всё хорошо, и нажали кнопку (после чего есть ещё какие-то интерфейсные тормоза при открытии результатов по комнатам).
Во время челленджа, если чей-то челлендж успешен, на этом тесте (на одном) сразу тестируются решения всех участников, которые по этой задаче ещё не упали. Оказывается, что это не так уж много.
Для соревнований в формате codeforces это осложняется двумя вещами:
1.фазы написания кода и взломов не разделены.
2. надо повышать приоритет для решений, которые готовятся пройти претесты.
По идее, эти вещи можно залечить... но позже. Для начала хотя бы добавить хаки к систестам с подождать потом подольше. А то это как то неправильно, когда тестсет слабый и занимаешь место выше (или ниже) только потому, что повезло с комнатой.
He's just that good.
Just kidding :D He probably read the Russian statement, which was fine.
ладно вклад, но пусть хоть рейтинг остается более менее объективным
если участники будут после контеста выбирать менять рейтинг или нет, то это не дело
Сам не буду считаться в рейтинг — (1) слил, (2) считаю, что эта психологическая игра “кто захочет посчитаться в рейтинг” — не совсем спортивное программирование. А именно навыки в спортивном программировании я бы хотел, чтобы рейтинг отражал.
you know that after locking any problem , you cant submit problem again
contest is ambigious specially problem A
Весьма противоинтуитивен тот факт, что заходят eps менее точные, чем ответ, который просят в задаче.
(хотя первые связаны с координатами, заданными на входе, а второй -- с точностью функции sqrt)
> Я никогда не понимал, зачем нужно делать огромные условия. Основная масса текста лишено всякого смысла и в решении не применяется, а саму идею условия и решения можно выразить двумя словами.
Оно то правильно, но в реальной жизни очень часто задачи программистам формулируют не программисты... и делают это куда более расплывчато и многословно.
В итоге с такой формулировке сегодняшние задачи ближе к реальной жизни, больше похоже на прикладные задачи, если так можно выразится. Не зря же говорят: правильно и четко сформулировать задачу - это половина решения.
Hey, How do you know about "ever" .. I just saw it was your first contest.
X-(
IMO, the Rating calculations should be done including all participants.
The Confirm button just for agreeing of applying this changes.
If all participants take this strategy, ratings are only increased in this round. This means that average of ratings is increased. It can be considered that ratings of who are not participated in this round are relatively decreased. I think that this is also unfair.
It's impossible because rating sum of all participants before contest and after contest must be equal
Gerald: Just one SQL request... ;-)
If this is not possible, the contest better be unrated for all.
Да ладно вам высчитывать... Кто не рискует тот не пьет шампанского! =Р
It was nowhere told about that rule. :(
Even if we need to wait results till the start of registration to CFBR#59(Div.2).
It would be more fair.
Результаты раунда будут определены только среди участников, проголосовавших за изменение рейтинга.
Вот теперь все окончательно перепуталось. Может все-таки стоит сделать раунд нерейтинговым и все? Не думаю, что кто-то сильно расстроится.
Представим себе ситуацию. Человек хорошо написал раунд. Но те участники, которых он опередил, проголосовали против пересчета рейтинга, а те, кто опередили его - за. Соответственно, участник, хорошо написавший раунд, имеет все шансы понизить свой рейтинг.Вот тогда, по-моему, такому участнику будет в сто раз обидней чем просто при отмене раунда как такового.
И того, я вижу два более-менее адекватных варианта:
1) Сделать раунд нерейтинговым для всех
2) Оставить голосование. Пересчитывать рейтинг только для тех, кто за это проглолосовал, но учитывать положение участника относительно всех остальных участников.
Насколько я понимаю, если голосов "за" окажется больше, то рейтинг пересчитается и голосовавшим "за" и голосовавшим "против"... Описанная ситуация возникнет, если люди вместо "против" будут игнорировать голосование (хотя ИМХО это правильная стратегия на ихнем месте).
I didnt participate, but I confirmed LoL.
Hey Alex_kpr change ur profile picture .
It is getting on my nerves. It looks like a psychopath. :P
There is no words such as "more tolerancy" ... :P
Can we get who have chosen be rated?
and how?
Учитывая то, что вершин всего 100, можно использовать матрицу смежности.
Зачем обсуждать гипотетические ситуации, которые могли возникнуть у других участников? Просто надо отвечать за себя.
А то сейчас те кто облажался на контесте не проголосовали, и это промах организаторов.
Ну, это несколько странное предожение. Например, убрать Гену за 20 взломов по задаче А =). Тем более, что эту задачу ничего не стоило написать криво и при использовании русского условия.
А организаторы, видимо, и сами были в несколько стрессовой ситуации...
я считаю, что идея с голосованием после контеста весьма сомнительная. Объективность результатов теряется. Все равно все честно не ответят, что проблемы контеста повлияли на результат. А от их ответа зависит ваш рейтинг.
Конечно, "все честно не ответят", но думаю, что для подавляющего большинства репутационные риски будут выше, чем потеря баллов рейтинга.
И не надо будет в пограничных случаях спорить "Rated / Unrated !".
да, разбор появится (скорее всего) сегодня вечером1 100000
abababababab...
babababababa...
i don't like competing with a lot of reds :D
we can't change our decision ?
Thanks for nice problems! May I know when solutions will be out?
searchattentiveness. Solution.import sys
raw = sys.stdin.readlines()
x = 0
data = []
for x in raw:
data.append(x.strip())
digits = data[0].split()
urlLength = int(digits[0])
URL = data[1]
possibleURLs = data[2:urlLength+2]
for url in possibleURLs:
x = 1
F = 0
for i in url:
y = 1
realsign = len(url)
for j in URL:
if j == i:
testsign = abs(x - y)
if testsign < realsign:
realsign = testsign
y += 1
F += realsign
x += 1
print F
PS: Как правильно оформлять код?