Автор MikeMirzayanov, 11 лет назад, По-русски

С наступающим Новым Годом!

На часах без пары дней Новый Год – самое время подвести итоги уходящего года. Если говорить коротко, то год для проекта оказался очень продуктивным. На Codeforces были проведены крупные чемпионаты, раунды следовали один за одним, был запущен подпроект Codeforces::Тренировки, были сделаны многочисленные улучшения/исправления/нововведения. Вот короткий список наших свершений:

  • учет авторитета при голосовании за комментарии/посты, fraud detection эвристики
  • открытие и множественные улучшения проекта Codeforces::Тренировки
  • внедрен Codeforces Markup на базе Markdown со вспомогательными тегами Codeforces
  • на платформе Codeforces совместно с ВКонтакте был проведен очень масштабный чемпионат VK Cup 2012, около 6000 участников!
  • на платформе Codeforces компания КРОК провела Открытый чемпионат Москвы и Московской области по программированию, около 1500 участников!
  • на платформе Codeforces компания ABBYY провела чемпионат ABBYY Cup 2.0, около 2000 участников!
  • внедрено прикрепление блогов к сореваниям в качестве анонсов/разборов и т.д., полуавтоматизировано прикреплены разборы прошедших контестов
  • на платформе Codeforces компания Bayan провела отборочный этап Bayan Programming Contest 2012/13, более 3000 участников!
  • на платформе Codeforces компания КРОК провела чемпионат КРОК по программированию среди студентов МГТУ им. Баумана, около 2000 участников!
  • сделаны множественные улучшения проекта testlib.h
  • поддержаны новые языки программирования
  • поддержана динамическая сложность задач
  • поддержана вставка фотоальбомов из Picasa в посты
  • поддержаны интерактивные задачи – несмотря на короткую формулировку это очень большой пункт
  • множественные улучшения проекта Polygon
  • поддержаны задачи с оценкой в баллах и частичными решениями (для соревнований по типу "марафон")

И это еще не все! Хочется похвалиться веселыми картинками с приятными графиками.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +368
  • Проголосовать: не нравится

Автор MaximShipko, 11 лет назад, По-русски

Добрый вечер!

Я рад вам сообщить о ряде улучшений, касающихся подпроекта Codeforces::Тренировки. При подготовке соревнований в данном разделе многие сталкивались со следующей проблемой: для добавления задачи или внесения небольшой правки в существующую тренировку было необходимо распарсить и пересобрать всё соревнование в Wizard'е с нуля. Другим вариантом было ручное редактирование файлов на FTP. Оба этих способа создавали дополнительные необоснованные трудности.

Сейчас в Wizard'е появилась возможность создавать патчи для соревнования. Хотите добавить задачу? Не нужно пересобирать весь контест. Обновить результаты, добавить ресурсы, условия? Нет ничего проще. Достаточно запустить Wizard в режиме редактирования и внести лишь те изменения, которые действительно необходимы. Wizard соберёт пакет contest.zip и пометит его как патч. Закачка пакета в Taskbook происходит обычным образом.

Рассмотрим подробнее, каким образом патч обновляет соревнование.

  • Задача из патча полностью заменяет существующую задачу соревнования с таким же индексом, иначе добавляется как новая задача. Задачи из sandbox'а соревнования, не присутствующие в патче, остаются неизменными. Для добавления задач в соревнование необходимо запустить Wizard, создать и распарсить одну или несколько задач и собрать пакет.

  • Таким же образом заменяются условия и ресурсы соревнования. Условие замещает существующее для этого языка независимо от имени файла, ресурс заменяет существующий при совпадении имён файлов, иначе добавляется новый.

  • Сведения о положении призрачных участников (contest.dat) заменяют существующие, если в новых содержится информация хотя бы об одной посылке. Если посылок нет и задачи патча являются подмножеством уже существующих задач соревнования (в sandbox'е), то contest.dat остаётся неизменным. В противном случае сгенерируется новый contest.dat (без посылок) с объединением множества задач соревнования и патча. Для обновления результатов призрачных участников необходимо распарсить новые результаты в Wizard'е, пропустить все задачи, нажав кнопку Skip problem, и собрать пакет.

Применение патча предполагает, что данные патча и текущее состояние sandbox'а являются консистентными. Для этого и патч, и sandbox подвергаются валидации, аналогичной той, что происходит при обновлении тренировки, но немного упрощённой (при закачке полного пакета соревнования подобной валидации не происходит, архив распаковывается "as is" и проверяется только при выпуске релиза контеста). Лишь в случае успешного завершения обеих валидаций происходит применение патча. В противном случае патч просто удаляется, а в error.log тренировки добавляется запись, из которой вы можете узнать, что же всё-таки пошло не так.

Улучшения коснулись и Taskbook'а, а именно системы валидации: если задача не менялась с момента последнего релиза соревнования, то её валидация производиться не будет. Это значительно ускорит процесс обновления тренировки в случае небольших правок. Если же ни один файл тренировки не менялся, то обновления в принципе не произойдёт, а пользователю будет показано соответствующее сообщение.

В качестве небольшого бонуса мы сделали много улучшений в интерфейсе Wizard'а. В частности, для большинства действий появились горячие клавиши (подробнее во всплывающих подсказках к кнопкам), также были усовершенствованы многие диалоги:

  • Ускорен запуск диалога выбора множества файлов в операционной системе Windows засчёт сокрытия элемента Network. Элемент можно вернуть, нажав специальную кнопку.

  • Добавлена кнопка, позволяющая сохранить contest.dat, не собирая полный пакет.

  • Изменён механизм запуска диалогов выбора и сохранения файлов. Это почти не повлияло на внешний вид, однако позволило добавить ряд усовершенствований, таких, как установка имени файла по-умолчанию и сохранение текущего каталога при последующих использованиях диалога.

  • В случае неудачи сохранения пакета соревнования пользователю будет предложено попробовать сделать это ещё раз. Не нужно будет заново валидировать соревнование и собирать пакет.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +183
  • Проголосовать: не нравится

Автор HolkinPV, 11 лет назад, По-русски

Всем доброго времени суток)

Новый год уже на носу, а тем временем мы рады приветствовать вас на очередном раунде Codeforces #158 для участников Div. 2, быть может последнем в уходящем году). Как обычно, участники Div. 1 могут поучаствовать вне конкурса.

Задачи для вас были подготовлены авторами: Николай Кузнецов (NALP), Фефер Иван (Fefer_Ivan), Павел Холкин (HolkinPV) и Геральд Агапов (Gerald). Традиционно хочется поблагодарить Михаила Мирзаянова (MikeMirzayanov) за систему Codeforces и Polygon, а также Марию Белову (Delinur), которая перевела условия задач.

Распределение баллов по задачам будет стандартным.

Всем участникам соревнования успешных взломов, высокого рейтинга и удачи в новом году!

UPD: соревнование завершилось, надеемся оно вам понравилось)

Поздравляем победителей:

1) ballmaids01
2) betalife37
3) showtime
4) vlyubin
5) bardek

UPD2: разбор задач опубликован, его можно найти здесь)

Полный текст и комментарии »

  • Проголосовать: нравится
  • +163
  • Проголосовать: не нравится

Автор witua, 11 лет назад, По-русски

Всем привет,

А знаете ли вы, что завтра состоится Codeforces Round #157? Его автором являюсь я, и это мой седьмой раунд на CF. Помогает мне его строить Gerald, спасибо ему за это.

Разбалловка в первом и во втором дивизионах стандартная: 500-1000-1500-2000-2500

Желаю вам удачи!

Top-7 Div1:

  1. ftiasch
  2. rng_58
  3. shangjingbo
  4. gawry
  5. sandytea
  6. Petr
  7. peter50216

Top-4 Div2:

  1. guliashvili
  2. pavel.savchenkov
  3. HighFlow
  4. mohammadrdeh

Спасибо за участие.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +220
  • Проголосовать: не нравится

Автор Sereja, 11 лет назад, По-русски

Всем привет!

Совсем скоро, 16 декабря в 19:30 MSK состоится Codeforces Round #156, автором которого являюсь я. Это мой второй раунд на Codeforces и я надеюсь, что не последний.

Спасибо Steps09, Seyaua и sdya за помощь в тестировании задач, а также Gerald за помощь в подготовке раунда. Отдельное спасибо Delinur за перевод условий на английский.

Разбалловка в первом и во втором дивизионе стандартная: 500-1000-1500-2000-2500.

Настоятельно рекомендую прочитать условия ВСЕХ задач.

Gl & hf ! :)

Контест окончен, надеюсь вам понравилось :)

Поздравляю победителей див1:
1). YuukaKazami
2). al13n
3). rng_58
4). Bigsophie
5). KADR

И победителей див2:
1). ShadowSong
2). ynbpdy072
3). jiaobu

Разбор задач по ссылке.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +202
  • Проголосовать: не нравится

Автор Nerevar, 11 лет назад, По-русски

Всем привет.

8 и 9 декабря в Саратовской области пройдет муниципальный этап Всероссийской олимпиады по информатике. Мы решили, что будет интересно, если задачи с олимпиады будут решать не только саратовские школьники, но и все желающие. Поэтому я рад сообщить, что в ближайшие выходные состоятся сразу два раунда для участников второго дивизиона (олимпиада проходит в два тура, поэтому и раундов будет два).

Первый из раундов — Codeforces Round #154 (Div. 2) — состоится 8 декабря в 14:00 MSK.

Второй — Codeforces Round #155 (Div. 2) — пройдет 9 декабря в 14:00 MSK.

Это будут обычные раунды по правилам Codeforces, но с одной особенностью:

Ввод-вывод во всех задачах будет файловый: чтение нужно осуществлять из файла input.txt, а выводить в файл output.txt.

Разбалловка будет объявлена незадолго до начала каждого из раундов.

Участники из первого дивизиона, как обычно, могут поучаствовать вне конкурса.

UPD По ссылкам содержатся примеры решений с файловым вводом-выводом для некоторых языков:

UPD2 Разбалловка в 155-м раунде будет стандартной: 500-1000-1500-2000-2500.

UPD3 Появился разбор задач раунда 154.

UPD4 К сожалению, в первой половине контеста было обнаружено, что чекер по задаче C не проверяет лексикографическую минимальность выведенного участником ответа. Мы приносим свои извинения за эту ошибку. Поправив чекер, мы провели расследование и обнаружили, что изменение чекера повлияло на 53 участников из второго дивизиона. Мы считаем, что справедливо будет сделать данное соревнование для таких участников нерейтинговым. На всех остальных участников эта неточность никак не повлияла.

UPD5 Появился разбор задач раунда 155, уже на русском:)).

Полный текст и комментарии »

  • Проголосовать: нравится
  • +81
  • Проголосовать: не нравится

Автор KADR, 11 лет назад, По-русски

Всем привет!

В четверг, 6 декабря в 19:30 MSK состоится Codeforces Round #153, автором которого являюсь я. Это уже третий мой раунд на Codeforces и я надеюсь, что будут еще.

Спасибо Shtrix, Seyaua и sdya за помощь в тестировании задач, а также Gerald за помощь в подготовке раунда. Отдельное спасибо Delinur за перевод условий на английский.

Надеюсь, задачи вам понравятся.

Всем удачи!

UPD: Опубликован разбор задач.

Поздравляем победителей!

Division 1:

  1. Egor
  2. tourist
  3. rng_58
  4. kelvin
  5. Burunduk1

Division 2:

  1. inker
  2. WhoTheHellIsMe
  3. memo1288

Полный текст и комментарии »

  • Проголосовать: нравится
  • +173
  • Проголосовать: не нравится

Автор MikeMirzayanov, 11 лет назад, По-русски

2-го декабря состоится очередной (17-й) полуфинал Чемпионата Мира — Northeastern European Regional Contest 2012!

Желаем удачи командам, а болельщикам — побольше радостных моментов!

Полезные ссылки:

Полный текст и комментарии »

  • Проголосовать: нравится
  • +72
  • Проголосовать: не нравится

Автор Gerald, 11 лет назад, По-русски

Доброго дня!

По техническим причинам было решено перенести трансляцию раунда на чуть позднее время. Трансляция будет проведена отдельным соревнованием КРОК-МВТУ 2012, Финальный раунд (Online версия, Div. 2), пожалуйста, регистрируйтесь на это соревнование.

Трансляция будет рейтинговым раундом для участников из Div. 2.

UPD. Совсем скоро начнется трансляция. Напоминанию, что соревнование будет проводиться по обычным правилам Codeforces. Разбалловка: 500-1000-1500-1500-2000.

Удачного контеста!

Полный текст и комментарии »

  • Проголосовать: нравится
  • +59
  • Проголосовать: не нравится

Автор pkhaustov, 11 лет назад, По-русски

Всем привет!

Одним из авторов Codeforces Round #152 являюсь я.

Также авторами Codeforces Round #152 являются студенты Национального исследовательского Томского политехнического университета: am-real и max777alex.

Задачи Codeforces Round #152 будут посвящены литературным произведениям, отечественным кинематографу и мультипликации.

После всего вышесказанного авторы раундов обычно рассказывают о себе или пишут о том, что это — их первый раунд. Я не буду заниматься тем же самым, ведь существенной части сообщества Codeforces и без того известно, кто я такой. И мне даже интересно отношение количества смешлявых репризок в комментариях до и после раунда. Они только приветствуются.

Стоит, как обычно, поблагодарить тех, кто помогал нам готовить этот раунд. Спасибо Gerald за помощь в подготовке раунда. Спасибо Delinur за перевод задач на английский язык. И особенное спасибо Seyaua и sdya за то, что они согласились (ценой собственного времени) вычитать и прорешать задачи.

Обратите внимание, что раунд состоится 25 ноября в 19:30 по московскому времени.

Разбалловка div1: 1000 1000 1500 1500 2500

Разбалловка div2: 500 1000 2000 2000 2500

Контест окончен.

Мы приносим свои извинения за двусмысленность, допущенную в условии задачи A. Не было ясно, можно ли касаться штанги в момент, когда мяч пересекает линию ворот. Тем не менее, оба понимания условия проходили. Эти решения отличаются на бесконечно малую величину. Единственное, на что это оказало непосредственное влияние — взломы. Все взломы, которые базировались на утверждении о том, что касание штанги в момент пересечения линии ворот невозможно, будут удалены. Пожалуйста, те, кто делал такие взломы сообщите об этом Геральду Агапову (Gerald).

Мы также приносим свои извинения за перебои в работе сервера и сбои при отображении условий.

Далеко не единогласным решением жюри было решено сделать раунд рейтинговым. Рейтинг будет пересчитан 26.11.2012 после того, как будут удалены все соответствующие взломы.

Опубликован русскоязычный разбор задач раунда.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +75
  • Проголосовать: не нравится