Раунд окончен. Мое искреннее восхищение победителю в общем зачете nab, который решил все 10 задач за 1 час 25 минут, и поздравления победителю в официальном зачете winger, повторившему этот подвиг за 1 час 52 минуты (мне кажется, не стоило так уж сильно за него беспокоиться, а?). Официальные результаты будут объявлены позже, после удаления явных читеров.
Разбор задач здесь.
Язык этого раунда — Factor, стековый функциональный язык с развитой системой встроенных библиотек. Примеры программ:
A + B
(числа A и B заданы в разных строках):
USING: io kernel math math.parser ;
readln string>number
readln string>number
+
number>string print
42
(задано количество чисел, затем сами числа по одному на строку, если их сумма равна 42, вывести YES, иначе вывести NO):
Вариант 1 (Nickolas)
USING: io kernel math math.parser sequences ;
readln string>number iota
0
[ drop readln string>number + ] reduce
42 =
[ "YES" ]
[ "NO" ]
if
print
Вариант 2 (Gerald, ! — комментарии до конца строки)
USING: io kernel math math.parser formatting sequences prettyprint io.streams.byte-array io.streams.sequence ;
IN: template
: sum-it ( n -- answer )
dup 0 = ! if
[ ] ! zero in stack
[ 1 - ! decrease count by one
readln string>number ! read next a_i
swap ! a_i (n - 1) in stack
sum-it + ! recur
]
if ;
readln string>number
sum-it ! sum n numbers from input
42 =
[ "YES" print ]
[ "NO" print ]
if
Источники информации о языке (преимущественно англоязычные):
- сайт Factor и документация
- авторская статья о языке (.pdf)
- статья с примерами в Прогопедии (рус.)
- примеры на Rosetta Code
- независимая статья "для начинающих"
Система тестирования использует официальный компилятор языка, версия 0.94. Для тестирования своих программ можно:
- воспользоваться вкладкой “Запуск” в интерфейсе контеста.
- воспользоваться ideone, язык Factor (там версия 0.93, но в том объеме языка, который используется на контесте, различий быть не должно). Напоминаю, что по умолчанию анонимно присланные коды показываются в recent codes, на прошлом раунде 90% recent codes были кодами с контеста на COBOL! Для сохранения спортивного интереса рекомендую зарегистрироваться и использовать опцию приватности “user’s”, или хотя бы использовать опцию “private”.
- установить компилятор локально. Архивы без пароля:
OS | Ссылка |
---|---|
Linux, x32 | Скачать |
Linux, x64 | Скачать |
Mac OS X, x32 | Скачать |
Mac OS X, x64 | Скачать |
Windows, x32 | Скачать |
Windows, x64 | Скачать |
В Windows и в Linux процесс установки одинаковый: скачиваем архив для своей ОС и разрядности, распаковываем его, переходим в полученную директорию и запускаем компилятор из командной строки: в Windows — "factor.com program.factor", в Linux — "./factor program.factor"
Контест открывается в 19.00 по московскому времени; за полчаса до этого мы выложим архив с компилятором, а за 5 минут до начала — объявим язык.
Предварительная загрузка
Архивы с паролем e98897e46008ee01. Запуск онлайн тоже будет.
OS | Ссылка |
---|---|
Linux, Windows | Скачать |
Mac OS X | Скачать |
До первого Wildcard-раунда VK Cup 2012 осталось чуть меньше суток, и можно приступать к оглашению правил. Но прежде — несколько организационных вопросов:
- Напоминаю, что на этот раунд нужно регистрироваться отдельно (регистрации в турнире недостаточно), регистрация заканчивается одновременно с окончанием раунда.
- 50 дополнительных мест в раунде 2 разыгрываются между всеми участниками VK Cup, которые прошли квалификацию, но не вышли в раунд 2 из основного раунда 1 (независимо от того, принимали ли они участие в основном раунде 1).
- Вне конкурса участвовать можно всем.
- Соревнование будет нерейтинговым для всех участников.
Итак, что же необычного в этом раунде? Это будет Surprise Language Round (ранее известный как Unknown Language Round), аналогичный тем, что проводились на Codeforces раньше. Правила:
- Индивидуальное соревнование по правилам ACM ICPC: положение в результатах определяется количеством решенных задач, при равном количестве — набранным штрафным временем. Изначально штрафное время участника равно 0, при каждой сданной задаче оно увеличивается на время, прошедшее с начала контеста, + 20 минут за каждую неудачную посылку до отправки правильного решения. Решение считается правильным, если оно прошло все тесты из предопределенного набора; правильно ли посланное решение, становится известно сразу. Взломов чужих решений нет.
- В раунде будет 10 задач, примерно отсортированных по сложности, и 2 часа на их решение.
- Решения задач принимаются только на одном языке, который будет объявлен в начале контеста. Язык существует давно, а не придуман нами специально для раунда. Нет, это не Brainfuck :-)
- Пожалуйста, в начале контеста перечитайте этот пост целиком: в нем появится объявление языка, рекомендации по установке компилятора (в интерфейсе контеста будет доступен запуск программы онлайн) и полезные ссылки на документацию. В остальном изучение языка — дело рук самого участника.
Мы надеемся, что выбранный нами язык будет незнакомым для большинства участников раунда. Для справки приведу список Surprise/Unknown Language Round, которые проводились на Codeforces ранее.
Раунд | Язык |
---|---|
Surprise Language Round #5 | COBOL |
Unknown Language Round #4 | Befunge |
Unknown Language Round #3 | Pike |
Unknown Language Round #2 | Io |
Unknown Language Round #1 | Tcl |
Этот раунд написан мной, спасибо Gerald за тестирование. Лично мне очень нравится язык этого раунда; надеюсь, что вам он понравится не меньше. Всем удачи!
Бред... Мне кажется, что есть немалое количество участников, которые по тем или иным причинам не смогли писать вк раунд 1. Для них уайлд-кард раунд был адекватным вариантом для того, чтобы продолжить участие в соревновании, а тут этот сурпрайз раунд... Не спорю, для некоторых это весело, но ведь вк кап — относительно серьезное соревнование для того, чтобы использовать такие спорные методы квалификации в следующий раунд.
Зануда.
Да, конечно, этот раунд определенный эксперимент. Напомню, что таким образом необычным способом квалифицируются менее 7% от всех участников Раунда 2. То, что раунд будет по необычным правилам было объявлено заранее. Кстати, умение быстро разбираться в чем-то новом — умение довольно полезное. Результаты таких контестов не являются рандомом. Да, и слово "бред" — это некрасиво.
В code jam вобще нет шанса вернутся в строй, а тут бац и такая клёвая возможность.
Насколько я понимаю, некоторые не участвовали в round 1 потому, что им было намного удобнее участвовать в wildcard round.
Ну, эти возможные некоторые знали на что шли. А именно, что про формат контеста ничего не гарантируется. Думаю, почти любые нестандартные правила (CPR, задачи с неточной оценкой, правила IPSC, задачи вида "найдите баг в коде", разные первоапрельские правила Snarknews Contests или другие ещё менее известные варианты) вызвали бы не меньше недовольства.
Пока, кстати, не вижу в этой ветке никого, кто бы не постеснялся сказать "я в целом достаточно крут, чтобы пройти, но конкретно эти правила меня очень расстраивают". Пока только общие рассуждения.
Думаю, что подобные возгласы будут после того, как язык окажется, например, с логической парадигмой. Или компилятор/интерпретатор окажется багнутым/фичнутым в завимости от платформы, как это уже было на ULR.
Гарантировалось, что будет длиться 2 часа. Из этого почти наверняка следовало, что будет ULR. Добавлять новый вид правил контеста в систему и сразу проводить по ним такое важное соревнование очень рискованно. Тем более, контест совсем короткий и если что-то не так заработает — то все. URL — единственная уже опробованная возможность.
С одной стороны логично. С другой — гораздо чаще что-то новое (формат) появляется, когда оно для чего-то (контест спонсора) срочно нужно, чем просто в свободное время (плановое развитие). Да и при желании наверняка можно было бы провести закрытое тестирование новых правил.
По такой логике непонятно, что за контест будет в wild-card второго раунда, ибо он длится несколько суток, чего на кф ещё не было (UPD: а не, вспомнил что был контест с написанием парсеров для выделения поторохов задач).
Ниже предположили, что возможно будет марафон.. мне тоже так кажется. А ведь марафонов на кф ещё не было...
За несколько суток можно исправить баги и даже поменять правила в процессе раунда :) Так что здесь эксперименты более вероятны. Я тоже думаю, что будет марафон.
"я в целом достаточно крут, чтобы пройти, но конкретно эти правила меня очень расстраивают" (c)
да, я вот не постесняюсь, извините, назвать себя крутым после прошедших 700 участников :)
что ж, а с этими правилами я точно никуда дальше не пройду :) хотя бы по причине отсутствия опыта в ULR, SLR или как вы их там называете
ну это же контакт... надо быть готовыми ко всему...
Формат соревнования определяет контакт. Участием Вы соглашаетесь с ним. Но я согласен, что 11 марта — не самая удачная дата. У меня из-за праздников два важных события уехало на вечер воскресенья. Может быть в следующий раз организаторы учтут возможные турбулентности в сетке расписания участников.
У нас в СГУ такие (спорные) методы использовались и, скорее всего, до сих пор используются при отборе на курсы по Java и C++, которые отобранным людям оплачиваются. Довольно адекватных людей набирали.
Полностью с тобой согласен!
В этом раунде пройти было намного легче, чем в вк раунд 1. Я полраунда тормозил, решил только уж совсем легкие задачи, но все равно 48 место (я вне конкурса был, т.к. прошел с первого раунда). + весело же все-таки :)
На Google CodeJam второго шанса нет, а тут вон почти халява (в сравнении с vk round 1 и с обеими квалификациями).
Рекомендации по установке компилятора будут только для windows или нет?
Для Linux тоже.
а я-то был в нерешительности, что писать: wildcard или codechef. Теперь вопрос отпал сам собой...
Только что VK Cup потерял несколько потенциальных победителей, которые в силу разных (и не очень) обстоятельств не написали / слили 1 раунд.
Изначально же объявлялось, что будет необычный раунд. Этим людям надо было быть готовыми :) Я, правда, ждал чего-нибудь совсем оригинального, но SLR — тоже прекрасно.
С трудом представляю себе потенциального победителя, который бы при этом заранее считал, что не в состоянии войти в Top 50 по любым наперёд заданным правилам.
winger, к примеру. По обычным правилам он вполне способен входить в топ, но как показывали результаты предыдущих SLR, не всегда топовые участники показывают на них высокие результаты.
Ты уверен, что хорошо знаешь это за winger-а? Участие в раунде не означает автоматически, что всё время раунда человек целиком и с полной отдачей ему посвятил.
Я согласен, Вы правы. Но, на мой взгляд, такой тип wild-card раунда несколько рандомизирует силы участников, в свете того, что на дальнейших раундах будут обычные правила, и эта мысль была основной у меня. winger был приведен в пример лишь потому, что его результаты на раунде несколько не коррелировали с его другими результатами.
Кажется, нестыковочка вышла.
Потенциальный победитель не может слить контест уровня раунд1. Про необычность правил в wild-card все знали заранее. Не думаю, что кто-то в здравом уме решил добровольно отбираться через топ50 раунда с неизвестными правилами при наличии раунда по стандартным правилам с проходящими топ700. Если же кто-то не писал раунд1 из-за форс-мажорных обстоятельств, то им стоит вообще радоваться, что у них есть еще один шанс.
Думаю, что "необычные" правила — это ULR, а не контест по правилам ACMP/CPR/???/..., всё-же стоило объявить до раунда 1.
будет смешно, если этот пост уйдет из прямого эфира...
На самом деле, это не смешно...человек готовил этот раунд, влаживал в него свои силы, а тут такая реакция сообщества.
Но человек уже получил свои семь с половиной касарей. Его не должна волновать реакция сообщества.
Не в деньгах счастье ;)
А в их наличии ;)
Нет ><
В отсутствии? :D
В количестве)
Все-таки в отсутствии отсутствия ;)
Меньше чем за две минуты у поста вместо -12 стало +10. Баги? Накрутки? Скандалы, интриги, расследования? :)
Сейчас же вес +/- зависит от рейтинга, значит tourist плюсанул:)
Показывается чистый баланс, без веса от рейтинга. А вот во вкладе учитывается уже с весом
Да, так что если tourist плюсанет при -100, вклад взлетит до Alex_KPR. Правда, он никогда не нажимает "+", вместо этого он решает задачу.
Вклад, даваемый +/- зависит, а в рейтинге поста +/- всех участников равен 1.
Нет. От рейтинга зависит учет +/- во вклад. Рейтинг комментария или поста все плюсы и минусы меняют одинаково.
Нет. Вес всегда 1. Другое дело, что вклад в профиле изменится в зависимости от рейтинга плюсанувшего.
Поскольку в VK Cup мне всё равно нельзя, я рад уже тому, что правила + администрация позволяют участвовать вне конкурса.
Фанат ULR? :)
Я вот лично зарегистрировался на раунд, открыл этот пост, прочитал, отрегистрировался.
Upd. (считаю, что ULR — чемпионат по написанию индусского кода)
Вообще это забавно. Хотя как квалификация куда либо, действительно устраивает большой рандом. Впрочем, я верю, что организаторы это понимают и понимают зачем они это делают. Всяко лучше чем отсутствие такого раунда вообще.
Не то чтобы фанат, я даже не уверен, что буду участвовать. Но предоставленная возможность приятна вне зависимости от этого.
С этим не поспоришь. Возможность — это всегда приятно!
" The solution is considered to be correct if it passes all tests from a predefined test set; you know whether the solution is right immediately after sending it. There are no The round has 10 problems, sorted by estimated complexity."
I think the missing word after "There are no " is "pretests" here. (Oh, it's "hacks".)
BTW, will Wild-card Round 2 use the same rules as this one? It's a 7-day contest, and ACM-ICPC Style rules may lead to MILLIONS OF PENALTY...
ACM/ICPC rules will be here. Your solution will be judged on system tests immediately (no pretests).
I think that Wild-card Round 2 will be some kind of marathon with challenging problem.
I agree with you. Maybe it'll be like Codechef's long contest (some traditional problems and a challenge problem as tie breaker) or Topcoder's marathon contest.
Nope. It will be a literature contest. Each participant will be asked to write a short essay (2-3 pages) on the topic: "Why should organizers give me a wild-card?". The language participants will be obliged to write the essay in will be announced a day before the contest starts. It's a surprise!
How about setting it as a "Surprise Language Round"? The essay is only accepted in one language, for example, Na'vi's language...
I think: "There are no hacks."
Nice catch, thanks! I meant hacks, no hacks, but there will be no pretests as well.
Good idea!it would be an interesting contest.
я не верю своим глазам, что написана такая чушь! как??? как такое могло только в голову прийти: в официальное соревнование всунуть Surprise Language Round...
Во втором туре Wildcard будет Unexisting Language Round.
Скорее всего будет марафон.
Лол, я случайно перешёл по топ-10 в progopedia.ru в профиль Nickolas и увидел, что контест на COBOL прошёл 22.02, а статьи, написанные ею про COBOL, датированы 11-15 февраля.
P.S. Если что, для остальных 4 контестов это правило не распространилось.
Мне кажется, то, что уже проходило 5 раз не такое уж и необычное:)
Обычное проходило over 100 раз, так что 5 раз среди них — необычное. Да и никак нельзя сказать, что SLR'ы (ULR'ы) были однотипными, это всегда что-то новое, уж больно сильно они зависят от языка.
Не понимаю тех, кто чем-то недоволен. Если это "серьёзное соревнование", то сей факт не означает, что оно будет проводиться по тем же правилам, что и другие серьёзные соревнования. Те, кто по каким-то причинам не прошёл после первого раунда — сами виноваты, надо было проходить. Те, кто понадеялся на wild-card раунд — опять-таки сами виноваты, никто не обещал, что будет легко. Стыдно жаловаться на правила только потому, что твои навыки не лучшим образом к ним подходят.
ИМХО такой рандом мотивирует не самых опытных участников развиваться и совершенствоваться — так появляется хоть какой-то шанс пройти дальше. Спасибо, Nickolas, за подготовку раунда!
Разумеется, это очень частое явление, когда отбор проводится по другим правилам. Мне очень понравилась ранее высказанная идея, что можно для отбора проводить написание эссе на тему "почему я хочу принять участие".
Никаких вопросов, споров, холиворов, на самом деле, нет. Это просто... немного ВНЕЗАПНО.
TopCoder так и делает :) Если не ошибаюсь, последние 2 года приходило письмо с содержанием вида: "Вы слили все отборочные раунды TopCoder Open? Не расстраивайтесь! Специальное предложение — напишите, сочинение на тему 'Что можно сделать с финалистами', автор лучшей работы получит приглашение на онсайт!" Конечно, они не позиционировали это как WildCard Round, никто не жаловался.
Сюда же напишу пару слов из своего (не столь уж уникального) мнения касательно ситуации:
Видимо, участники рассчитывали на более высокий уровень корреляции между умением решать Codeforces-раунды и вероятностью отбора через WildCard. Отсюда SLR стал "немного ВНЕЗАПНЫМ"
С учетом пункта 1, пожалуй, администрации стоило сразу указать формат соревнования, просто для удобства участников, чтобы они могли оценить, насколько важно пройти именно через первый раунд. Правда, может к моменту проведения первого раунда еще не было решено, в каком формате проводить WildCard (или планировали в другом формате, но по каким-то причинам не получилось и "правила немного изменились")
Слова типа "бред" — это действительно неуместно и некрасиво. Это не самый удачный пример благодарности автору и администрации за проделанную для участников работу.
Такое ощущение, что дальше из SLR не пройдет НИКТО! :) Что-то не очень много комментариев вида "Хорошо, попробую пройти!"
Мне в целом пофиг, я уже прошел
Но я разочаровался, да и вообще я вижу большую разницу между "соревнование по необычным правилам" и "соревнование на необычном языке"
Ну, меня, например, все устраивает. Так что "хорошо, попробую пройти" :)
А те, кто, скажем, не прошел раунд 1, потому что отключили электричество? Алгоритмические задачи раунда 1 я решил бы и прошел. Что же будет на вайлкарде... а черт его знает.
Судя по твоей аватарке, я бы даже сказал "а Skiminok его знает"
По его аватарке, я больше ждал вопроса "а точно не надо будет самому пропатчить компилятор языка под FreeBSD?"
Тот, у кого отключили электричество, должен быть просто счастлив — ему дается ещё один шанс пройти в следующий этап!
Ну да, я счастлив, чего уж (no sarcasm here!). Если это только можно назвать шансом: условия, на которых мне дают право пройти на следующий этап, не совпадают с условиями, на которых проходили все.
Смысл в том, что лично для меня по факту первого раунда как будто и не было (если не считать падения в синий цвет). Таким образом, я имел шанс занять место во втором раунде как достойный участник — за умение придумывать алгоритмы, — а мне предлагают вместо этого посоревноваться в умении писать A+B на скорость понимания на извращенном языке. Этот факт меня расстраивает.
Мне почему-то кажется, что, если бы wildcard и не было, я бы не возмущался. Ну, отключили, ну, значит, судьба не хочет, чтобы я прошел :) А теперь получается, что лично для меня правила прохода были установлены вместо алгоритмического соревнования на ULR. Ну и что это за раунд такой?
Не только для вас, все в равных условиях....
Все в равных условиях с точностью до того, что
а) кто-то может знать язык
б) кто-то может знать очень близкий язык
в) важно знать хоть что-то с такой парадигмой
...
А как же мотивация "пройти не как все нормальные люди"?
Это не мотивация :)
Это будет, мм... прикольно, но не более. В каком-то смысле это даже не дает мне морального права на раунд 2, если судить по-человечески, а не по формальным правилам VK Cup. То есть я-то внутри своей головы знаю, что я решил бы 4-5 задач раунда 1 без проблем :) Но это только я так считаю. Если я отберусь через ULR — ни себе, ни кому другому морально я не доказал, что имею право продолжать участвовать в соревновании.
Что, разумеется, не означает, что я откажусь в нем участвовать, если пройду :)
Всё-таки организаторы не несут ответственности за подачу электричества в конкретном районе. WildCard раунд, по-моему, НЕ задумывался как дублёр первого раунда.
Я же и не предъявляю им такие претензии.
Он задумывался как второй шанс для тех многих, кто не умел решать задачи первого раунда. Пускай 50 лучших из них, раз уж не могут пройти по умению алгоритмически думать, пройдут по какому-нибудь другому умению.
Проблема только в том, что это не моя ситуация — именно поэтому я в комментарии выше все время употребляю слова "лично для меня" и т.п. Опять-таки подчеркиваю, что я не обвиняю в этом организаторов, я изначально отвечал SkyHawk, что его "непонимание жалующихся" не охватывает все разумные причины для жалоб, а не только вполне законные два неразумных повода ("надо было проходить" и "надо было не надеяться"), которые он упомянул, и в которых я с ним согласен.
Подводя конец ветке: никто никого ни в чем не обвиняет. Я сказал SkyHawk, что он не все рассмотрел, и пожаловался на свою ситуацию. Все, никаких контекстов тут больше нет, точка. Разве что кто-то считает, что я не имею права жаловаться :)
Раз уж поднялась такая длинная дискуссия, то отвечу.
Насколько я понял, Вас больше огорчает несправедливость жизни, а не решение администрации (я имею ввиду, что т.к. никого не обвиняете, то это решение можно отнести к несправедливостям жизни). Поэтому вполне соглашусь — на жизнь пожаловаться стоит =)
P.s. Желаю Вам удачи на wild-card round, пусть справедливость восторжествует :)
А почему ссылка "зарегистрироваться" справа не убирается после регистрации?
Страничка немного кэшируется, поэтому ссылка может пропадать не мгновенно. Но пропасть должна. У вас точно осталась?
У меня тоже осталась. Видимо это спецэфект с внеконкурсной регистрацией.
Это да, я полагал речь о красной кнопке на странице "Соревнования".
Да. Во вкладке соревнования пишет что я зарегистрирован, а справа не убирается.
i never expect a contest like this! wild card & surprise language? So coooooooool!
Мне не очень нравится решение сделать wild card раунд как Unknown Languade Round. Хотя если язык будет наподобие Pike (который очень и очень похож на C и на котором поэтому легко писать), то результат должен быть довольно справедливым.
И пройдут те, кто пишет на C++/C#. А тем, кто пишет на Delphi, будет значительно труднее. Так что в таком случае справедливость результата будет ещё меньше, чем если язык будет совсем незнакомым.
Если не brainfuck — может, whitespace?
а зачем угадывать? http://progopedia.ru/users/Nickolas/
SQL? ))
Еще может быть и Factor. Видимо они оба были кандидатами, и выбрали какой-то один из них. (Ваш Кэп)
Лично я за Icon либо Mercury
учитывая, что язык намного моложе, чем COBOL => Mercury
Еще вчера книжечку про Mercury почитал немного. Не думаю что мне это поможет, но все же.
Ага, HQ9+.
LOLCODE, однозначно.
O RLY?
It's fun but a little bit hard I guess.
сюрприз раунд лангвич --;
Можно ли использовать примеры из интернета как помощь при написании задач?
Конечно — без примеров из интернета в новом языке не разберешься :-)
Хорошо. Здесь это логично, но в обычных контестах использование чужого кода не приветствуется. Наверное, можно как-нибудь отдельно об этом сказать.
<joke>Ну, Hello world! копипастить наверное тоже не хорошо :) А первые eps задач такого уровня наверное и будут</joke>
По интернету гулять не запрещено, и если случайно зайдёшь на сайт с реализацией helloworld'а и увидишь эту реализацию, то что? Перепечатывать? Мало отличий от копипасты. Забыть?
Могу заверить, что он гораздо моложе COBOL. Точнее скажу через 40 минут :-)
мы уже хорошенько обсудили сложившуюся ситуацию; 100500 недовольных, включая меня, высказалось по поводу ВНЕЗАПНОСТИ SLR в качестве wildcard
но что мне по-настоящему не нравится в этой ситуации — что автор раунда, Nickolas, собирает минусы и читает далеко не самые приятные комментарии о раунде
давайте всё-таки скажем ей спасибо: человек старался, готовил раунд, выбирал интересный язык программирования
а также я хотел бы обратить внимание администрации на сложившуюся ситуацию и больше стараться впредь не повторять таких ошибок =/
В самом деле, такие вещи будем впредь анонсировать до основного раунда, чтобы участники в большей степени понимали на что идут. Анонс Wild-card Round 2 можно ждать до Round 2 :)
Nickolas — большая молодец, отличный автор и абсолютно незаменима. Работать с ней одно удовольствие! Ей огромное спасибо и лучи благодарности. Она вдохнула вторую жизнь в Surprise Language Rounds, сделала отличные классические раунды, а каждую ее статью я читаю с огромным удовольствием и интересом!
А мне раунд нравится. Он отберёт тех, кто умеет думать в нестандартных ситуациях
Конечно! С++ и Java удалят и заставят писать на Factor-e.
Where is the compiler?
Is it just me, or is the compiler download extremely slow?
<20 KBps here. It will finish after the contest begin :(
25KBps here,very slow. The contest should be delayed for at least 15 minutes to keep it fair to everyone.
it's even getting worse here. I'm afraid it can be finish after the contest is finished :(
I think I can finish the download next year.
Судя по тому, что компилятора не видно, язык — Whitespace.
А может первой задачей будет написать свой компилятор)
Ого О_О. 44,4 МБ
Может начало всё-таки отодвинут на минуток 10, так как компилятор обещали выложить за полчаса. У меня он как-раз скачивает полчаса
У кого медленно качает с codeforces, переложил на зеркало: http://kjen93.freedom-vrn.ru/vk2012wc1-package-linux-windows.7z
спасибо
А раньше выложить никак? С такой то скоростью до контеста не успею :(
+1
Вы хоть период запуска сделайте меньше.
p.s. А лучше перенесите на 10 минут раунд, архив то выложили за 20 минут.
он требует пароль?
Да. Его дадут за 5 минут до начала контеста, когда объявят язык.
I may get tons of minus for saying this but please delay the contest for at least 15 minutes. I cant download the compiler within time and it will ruin my chance to stay in the cup. I am sure lots of user like me with slow net connection is suffering same problem.
use "CUSTOM TEST"
That's actually not a bad solution, but I think shafaet's right that there's still an advantage to actually having the compiler.
bad thing about custom test is you have to wait 20 seconds to test another code after slight change. Its understandable that cf does it to decrease server load and its fair when you do just 1 or 2 tests but if you want to do a whole contest with custom test,it becomes very annoying.
I'm hoping for LOLCODE, Wierd, or Whitespace :D
http://esolangs.org/wiki/LOLCODE http://esolangs.org/wiki/Wierd http://esolangs.org/wiki/Whitespace
А почему под винду и линукс общий архив? Там надо будет что-то скомпилировать что ли? Вы уверены что у всех есть нужный компилятор?
Возможно, скажу бред. А что если компилятор на Java написан? Кросс-платформенность типа.
То это еще хуже, потому что 3/4 участников придется срочно учиться запускать джаву.
А мак тогда чем отличился?
Не факт что java установлена у всех. У меня вообще 7z не стоял:(
скорость даунлоуда огорчает
Таки перенесли на 10 минут. Спасибо!
Я совсем передумал принимать участие...
Архив поврежден, ахринеть!
This is my first time using this language.I think it is too hard for me.
Secret это кодовое подпольное имя Factor-а? ;)
Пример Геральда не работает
ЧЯДНТ?
No suitable arithmetic method left f right 1 generic -
ни один пример в запуске не отработал :( да и еще нелепое ограничение в 20сек....
Очень круто конечно что для прохода в следующий раунд надо знать английский язык! Много кто пишет контесты тут только из-за того что недостаточно владеет английским чтоб писать на топкодере или других иностранных ресурсах! А здесь нет ни одного русского нормального описания языка!
at some point, i have to say, the organizer doesn't respect the contestants by choosing an unknown (to most) fixed programming language to be the only one usable. Anyway, this is wildcard.
if you do this to your normal competition, you will see how many will like it. why most of the competition allowed as many language as possible? don't just randomly make up your rule as you like it.
i miss round 1, and i thought this is a chance to make up. now i have no interest to participate at all.
Wildcard is wildcard; it has to be something special. SLR is such a type of very interesting competition. Yes, it's very different with usual contests, but it's one of the rules of the game.
"SLR is such a type of very interesting competition"
It took me a while to understand what did you mean by SLR. First I thought about camera :p
yes, i understand. wildcard is wildcard. just feel a bit disappointed since i got up early just for this event, but then find it not interesting at all to me. Anyways, i am not trying to be offensive.
Организаторы VK Cup долго думали, как увеличить число синих и зеленых во втором раунде. И придумали...
Такие контесты конечно хорошие и надо приложить много усилий чтобы их подготовить, но, все-таки у нас тут не кружок полиглотов... Лучше бы это был обычный контест, а дополнительной возможности пройти дальше и вовсе не было, а если бы и была — то по таким же правилам. Мотивация пройти дальше есть, мотивации копаться в чем-то странном и лично мне неинтересном — вовсе нету. Результат — убитый зря час.
I want to protect Nickolas and the idea of this round.
Most of competitions do not have any kind of wildcards. TopCoder Open, Facebook Hacker Cup and so on. Idea of this round is not to give another chance to somebody how missed Round 1. Nobody was advised to hope for Wildcard and skip Round 1. It is just for fun. So if you skipped Round 1 it is your problems, not admins or Nickolas's.
Вопрос: почему никто не воняет на Facebook Hacker Cup и TopCoder Open? ВДРУГ У МЕНЯ ЭЛЕКТРИЧЕСТВО ВО ВРЕМЯ РАУНДА ОТКЛЮЧИЛИ?? ГДЕ МОЙ ВАЙЛКАРД??
Потому, что он не заявлялся. Мне лично казалось совершенно очевидным, что на Facebook HC надо обязательно участвовать в round 1/2/3, а здесь можно планировать график так, чтобы пропустить какой-то раунд. В частности, вместо round 2 я собирался писать wildcard-2.
Ключевое в предыдущем предложении — прошедшее время. Я теперь не уверен, что мне не надо будет писать на wildcard-2 запросы в стиле XPath к какой-нибудь малоизвестной древовидной базе данных с критерием оценки вроде минимальности длины кода.
Also I want to ask you. Why don't you complain about TopCoder Open or Facebook Hacker Cup where there is no chance to advance if you accidently missed Round 1 of this competition?
in those cases, i will just move on, as they didn't say there is a make up with will give more 50 positions. But this one, i waited for the event, and then come, and then feel disappointed. Shouldn't at least make it clear this one will not accept c++ in advance?
There was a lot of warnings about unusual rules of the wildcard rounds.
ok, my fault.
however, organizer, i suggest making the rules clear instead of just saying "unusual" next time. I have no much experience in participating in these events. I had thought that "unusual" means some tricky scoring rules, which i don't care at all. I just opt in to write program for fun.
anyways, let me stop here. Thanks for the effort and have fun.
The English version of this post explained the rules very clearly, including the part
Solutions are accepted only in one language, which will be announced at the beginning of the contest. The language really exists, we didn’t invent it for this occasion. No, it’s not Brainfuck :-)
Did you really think that this language will be C++? Please suggest how we could make this even more clear in the future rounds like this.
Yes, the rules is very clear. but it is not there when i registered for the event.
As I am quite new to the site, i did check the rules several times to make sure i understand it. however, I didn't expect you made an update just yesterday(?)
my suggestion is to make it clear, e.g. to say that the wildcard round is a SLR, and anything else related on the contest official page that describe the whole process and rules, well before the contest take place.
Do not defer any description of the contest until later, because people are not suppose to visit this blog every day.
Думал написать раунд с Андроида, а ссылки на интерпретатор под андрои оид нету.
Как этот язык мог понравиться...
Зря так, чудесный язык
Ждем в следующем году уайлд-кардов от гугла (по скоростной печати) и фейсбука (по игре в тэтрис).
более паршивого раунда и контеста я не писал. Не понимаю как такое могли дать. Я всегда думал что этот тип раунда для того чтобы сказать " Ха! смотри какой странный язык!"... А тем более по его результатам о чём-то говорить.... EPIC FAIL
Why am I listed as an "unofficial"? I registered on time and entered as soon as the competition began..
Because you didn't qualify to Round 1.
I placed 24th. Will I qualify to Round 2?
No, because you didn't qualify to Round 1.
"Official" means that you passed either Qualification round.
У этого языка есть операция "%"?
Да, называется 'mod'
mod
пришлось угадать)
хм, вроде-то угадал, но не компилилось, пришлось свою писать...
Странно, у меня нормально работало.
Есть еще 'rem'
А вы будете банить читеров?
Да. Только после этого мы объявим официальные результаты.
Просто я заметил двоих (один официально писал, а второй нет). Коды идентичны, только пробелы местами поменяли и добавили пару переводов строк.
Напишите мне в переписку кто именно.
Готово.
Жесть и мясо. Адовый язык. Спасибо за раунд!
даааа. мне понравилось, хоть и одной задачи до топ 50 не хватило=) спасибо организаторам за раунд!!=)
Хотя я думаю, что по каждой задаче было решение в пару строчек через стандартные библиотеки, так что можно было чуть больше искать и сильно меньше думать.
Согласен, только что был фейспалм когда увидел как вывести число в двоичном формате. (.b)
Очень красивое и элегантное решение. :)
Выбрано ещё было такое название языка, по которому гугл искал ну уж совсем не то=)
Please make 70 additional places in Round 2 :D
How great the language document is! the author just forget to write examples.
This was a really great contest, thanks Nickolas :D
I've never heard of this language, but it's pretty cool. I think it's more fun than other functional languages like LISP just because of the stack :D
Кое-кто, таки не прошел
Еще есть шанс, что будет много зобаненных читеров.
а ты что радуешься то так?
Ну почему нигде не было написано, что в конце программы нужно очищать стек, а вывод без переноса строки — команда write? Убил на это больше часа...
Да да, тоже помудохался с этой очисткой, но если запускать на сервере, то в аутпуте будет писаться не совпадение с ( — — ), что мне и помогло.
Я в конце писал 0 exit , тогда можно не очищать стэк
Честно говоря не ожидал, что мне так понравиться! Писал раунд с настроем хорошо провести время, так и получилось, да ещё и попал в топ 50, что меня очень удивило. Спасибо большое автору.
Очень "интересный" язык!!!
Мне сильно не понятно почему такая отправка проходит за 2.5 сек http://mirror.codeforces.com/contest/162/submission/1377651 а такая получает ТЛ http://mirror.codeforces.com/contest/162/submission/1377648
Разница лишь в том сколько подключается стандартных библиотек! Не ужели это занимает пол секунды???
Вообще, кстати, да, за TL по задаче C хотелось поубивать. В адекватных языках это прошло бы.
Но в общем, это единственная претензия к языку, он классный.
Возможно любителям стековых языков он понравится :)
У меня TL-лась из-за подключенной formatting :)
А язык интересный, да.
Да. Я так понимаю у меня тоже из-за этого. Я просто на с++ пишу, и мне просто не могло придти в голову, что подключение библиотеки может занимать такое время.
Ага, все подключаемые библиотеки компилируются при запуске, это долго. Можно было собрать image со всеми уже скомпилированными библиотеками, тогда этой задержки не было бы.
I couldn't even install compiler on my Mac, using custom test to debug instead... what a catastrophe @_@
Why couldn't you install compiler? I used Mac to solve all the problems.
Почему в коде 4+0+..+0 даёт 5?!
Всё понял, делилось не нацело.
лично мне не понравилось
каждому своё, господа, а я испытал только злость, непонимание (до сих пор не пойму, почему у меня в рекурсии 0 > 0 считается за true и уходит в бесконечный цикл) и разочарование
а ещё это идиотское ограничение, позволяющее компилировать раз в 20 секунд, вообще бесило весь раунд =)
хорошо, что хоть рейтинг не снимают за такое :)
ну может потому что 0 0 > ?
Раунд не писал, язык не оценил. Но про раз в 20 секунд — можно ведь было на ideone.com писать.
ideone.com часто компилировал намного дольше 20 секунд.
да, это фейл, по ideone я не знал; надо каждый раз внимательно перечитывать пост после апдейта
А где конкретно? Я тоже с таким столкнулся из-за того, что обычное деление(/) там — рациональное. Может, у тебя было выражение типа бесконечно малая дробь > 0 ?
ты это серьёзно?) оно же 3 / 2 = 1 возвращает, а не 1.5
вообще да, у меня было деление на 2 в задаче B
Может я что-то не понимаю, но у меня возвращало 1+1/2
Да нет, 1+1/2 =)
видимо я правда что-то не понимаю
вот сабмит — 1377305, эта штука уходит в бесконечный цикл, хотя, по идее, не должна
целочисленное деление — /i
и какая жертва концлагерей придумала такое обозначение?..
да, теперь OK, спасибо
P.S. это ещё один камень в огород проведения SLR в качестве чего-то большего, чем просто развлекательного контеста
http://docs.factorcode.org/search?search=Modular+arithmetic Вот меньше 2-х минут.
я изучал статью на Прогопедии (зная, что почти наверняка её писала Nickolas) + "независимую статью" для начинающих, которая по пятой ссылке, и логично предположил, что полученной информации должно быть достаточно для решения некоторых задач
мне кажется странным, что на раунде двухчасовой длительности с абсолютно новым языком программирования я должен много времени тратить на документацию, переходя по всем ссылкам, и искать возможности языка, которых может и не быть
Замени в своем коде dup 0 > на dup 1 >= , и у тебя уже не будет бесконечно работать. Там числа рациональные по умолчанию.
хорошо, спасибо, я вроде бы разобрался
Снова правильные решения проскакивали в "Recent" на http://ideone.com/ (@).
Интересно, а все участники, чей код хоть раз проскочил в recent, не должны ли быть дисквалифицированны автоматически?
(Ой, извините, с примером ошибка вышла)
Не думаю, у кого-то из разработчиков есть время/желание разрабатывать автоматическую систему проверки на публикацию исходных кодов на копи-паст сервисах (pastebin.com и др.) и онлайн-компиляторах/интерпретаторах.
Вопрос не во времени/желании. Вопрос в том — вот я сейчас соберу 5 человек и мы вручную проверим ideone.com. Найдем пять-шесть случаев совпадения. Будут ли дисквалифицированны эти участники?
Во-первых, по ссылке не код, решающий задачу, а пример с http://progopedia.ru/language/factor/ .
Во-вторых, свои решения я запускал только во вкладке "Запуск" на CF и больше нигде.
Да, дико извиняюсь, что-то какой-то сдвиг по фазе у меня случился. Я почему-то сравнил глазами и мне показалось, что совпадение побитовое.
Спасибо Nickolas за контест, очень понравилось!
Please write me about cheaters if you see some (or just a suspiciously similar codes).
==
Пожалуйста, пишите мне личные сообщения, если видите читеров или просто подозрительно похожие коды.
I saw Evgesko and olethra have the same code and almost same submission time. (BOTH 26th place).
And also Jace_Beleren has the same code as theirs. (26th place)
Also geka666 and amirzoyan have the same code. (20th and 22nd place)
And Jovfer has the same code as Jace_Beleren's (23rd place)
Kazakhstan a_bekzat and etilen have the same code (43 and 44th place)
China MatRush and tiirz have the same D and E promblem code. (51st and 52nd place)
Ooops, for the newbie like me, it's almost the standard way.
SergeyLazarev, DULGUUNBATMUNKH, MatRush have the same code on D and E
There are 11 solutions on D containing code, that differs only in USING: line among top 50 official participants
Also I wonder how many participants have the same code on B :)
Actually, near 50% of D solutions are the same)
You should know that that is the standard solution for problem on D and E
Then why are you blaming all that people for cheating?)
Look at their solutions and submission times!
Lol, then from that point you are cheater too
I almost caught 10 or more cheaters and won't they get eliminated from the contest?
You should know that that is the standard solution for problem on D and E
Are you one of the cheaters? Just look at Evgesko and olethra will you say that was a coincidence???
It could be) A lot of users have similar solution. Are they all cheaters? Look at your code and tiirz, and MatRush. Nothing similar? Than I'm sure you are cheater too.
Well, they are from one city, so they could be cheaters) But I can't tell that about others who are even from different countries. Are you hoping to get in 50 in that way?)
I have a mini-editorial here: http://mirror.codeforces.com/blog/entry/4140
It includes all my code (8 AC, 1 TLE, 1 unattempted) if you're interested. I think once you get the hang of one or two recursive solutions, the rest become a lot more obvious.
Спасибо, было интересно.
Кстати, а откуда понабежала толпа, сдающая на питоне/сях/etc? На первых страницах статуса их больно много.
может они думали пописать SLR, но разочаровались в языке и стали отрешивать архив?)
И давно задачи с SLR можно хоть где-то сдавать на других языках?
В целом раунд понравился.
This language is so awesome... http://www.youtube.com/watch?v=f_0QlhYlS8g
Общий вопрос. Вот честно, кто-нибудь проанализировал страницу http://progopedia.ru/users/Nickolas/, подумал, что LOLCODE эзотерический, а SQL слишком известный и прочитал документацию по Factor заранее?
Я собирался так сделать, но когда увидел пример кода на этом языке, решил что бесполезно и перестал этим заниматься :)
UPD: Но, что удивительно, к концу контеста я очень проникся этим языком и выражаю огромную благодарность автору за раунд и за то, что у неё получилось переубедить меня относительно SLR раундов :)
Есть такое :)
Я начал читать документацию по Factor примерно за 20 минут до начала раунда. Рассуждения простые: если Nickolas действительно его выбрала и описывала, то это выгодно, а если нет — ну мне все равно нечем заняться, пока контест не начался.
Мне одному кажется, что это немного нехорошо, и Nickolas (которой спасибо за классный раунд) надо бы получше конспирироваться?
Бесспорно.
Nickolas делает великолепные SLR. Но ей в любом случае нужно давать документацию по языку, и грех не воспользоваться ее же проектом Progopedia в таком случае. Но, как я понимаю, довольно часто она сначала натыкается на интересный язык, решает, что он будет языком грядущего SLR, а потом понимает, что раньше в Progopedia он достаточно подробно не описывался.
Можно предложить делать правки от лица другого участника. Или вообще анонимно. Пока что эта проблема еще в рамках статистической погрешности (не много человек начали читать про Factor на основании знаний о странице Nickolas в Progopedia, и это число сравнимо с процентом тех, кто мог бы знать о языке заранее). Но на следующем SLR интригу уже обязательно необходимо сохранить.
Почему бы не заливать изменения на Прогопедию одновременно с началом раунда?
В основном потому, что одновременно с началом раунда нужно сделать довольно много других вещей. Кроме того, у нас нет автоматического режима "заливки изменений", все делается через обычный режим редактирования, и на загрузку всех примеров и описаний в двух экземплярах (на .ru и на .com) физически уйдет больше получаса, даже если все заготовить заранее. А писать заливку специально ради раундов, которые проводятся от силы раз в два месяца, нет ресурсов.
Раз уж об этом зашла речь, не могу не указать на то, что проблема была бы еще меньше, если бы не нашлось два человека, которые доступно объяснили остальным, где искать свежие правки и как они коррелируют с языком раунда.
Но вообще да, к следующему разу я что-нибудь придумаю :-)
а кто второй из этих двух человеков?
http://mirror.codeforces.com/blog/entry/4133#comment-83942