Так как почти каждый член сообщества Codeforces умеет программировать, мы решили отказаться от wysiwyg редактора HTML и внедрить более программистский способ разметки текста. Конечно, технические тексты станет набирать значительно удобнее, а тексты будут выглядеть единообразнее.
Теперь мы используем вариант Markdown в качестве языка разметки для публикации постов в блог и комментариев (позже будет в личных сообщениях и, вообще, всюду). Так как мы используем дополнительные расширения, то разметку мы называем просто Codeforces Markup. Расширения Codeforces можно подглядеть в редакторе, описание остальных я опубликую здесь чуть позже. В Codeforces Markup менее навороченный синтаксис спец. тегов — двойные квадратные скобки заменены на одинарные (например, [problem:11A], [user:Petr], а можно так ~Petr).
Кроме того, улучшена типографика постов и комментариев.
Посмотреть описание Markdown можно по ссылкам:
- http://ru.wikipedia.org/wiki/Markdown (по-русски)
- http://rukeba.com/blog/2009/02/28/markdown-sintaksis-po-russki/ (по-русски)
- http://en.wikipedia.org/wiki/Markdown (по-английски)
- http://daringfireball.net/projects/markdown/syntax (по-английски)
Вот короткий список возможностей:
- вставка хэндла пользователя (по короткому тегу вида
~tourist); - курсив и жирный текст (
*курсив* и **жирный текст**); - код внутри строки —
return a == 0 ? b : gcd(b % a, a);(поместите код между символами `); - ненумерованные, нумерованные и вложенные списки;
- заголовки;
- автозамена дефисов на тире (эвристика);
- автовставка ссылки по адресу, пример: http://codeforces.ru/;
- таблицы и изображения;
- подсветка кода;
- “умная” расстановка кавычек;
- абзацы разделяются пустой строкой, переводы строк игнорируются;
- спец. теги Codeforces;
- значительно улучшено распознавание формул, можно писать “с вас $2”;
- и многое другое!
Несколько примеров использования тегов Codeforces:
| исходный код | результат |
|---|---|
~Ripatti - Лучший автор задач 2011 - | Ripatti — Лучший автор задач 2011 |
[user:tourist] - лидер рейтинга | tourist — лидер рейтинга |
[problem:125E] - задача на графы, решите [problem:125E,ее] | 125E - Компания MST — задача на графы, решите ее |
результаты [contest:125] доступны по [standings:125,ссылке] | результаты Codeforces Testing Round #2 доступны по ссылке |
решение [problem:125E] - [submission:912139] | решение 125E - Компания MST — 912139 |
Напоминаю, что на Codeforces реализован предпросмотр, так что не надо сумасшедших экспериментов по изучению Markdown в комментариях :)
27-го января были подведены итоги и награждены лауреаты. Ими стали:
- Лучший участник Codeforces 2011 года: Геннадий tourist Короткевич. Было произведен пересчет рейтинга, учитывая только раунды 2011 года. Геннадий возглавил таблицу результатов с существенным отрывом! По ссылке вы можете ознакомиться с его успехами на соревнованиях Codeforces.
- Лучший автор задач Codeforces 2011 года: Артем Ripatti Рипатти. В 2011 году Артем подготовил и провел на Codeforces около 10 раундов, зарекомендовал себя не только как автор интересных задач, но и как ответственный партнер. Мы благодарны Артему за оказанную проекту помощь и надеемся на дальнейшее сотрудничество.
- Лучший блоггер Codeforces 2011 года: Александр Alex_KPR Куприн. Блог Александра регулярно радовал читателей интересными статьями. Его отчеты о Russian Code Cup, финале ACM-ICPC, Петрозаводских сборах вызвали интерес не только у постоянных читателей, но и привлекли новых. Спасибо!
(Это перевод оригинального текста, пожалуйста, старайтесь использовать английский в комментариях)
Всем привет.

Не так давно в английскую Википедиа была добавлена статья о Петре Митричеве (Petr). В настоящее время идет обсуждение этой статьи на предмет удаления по причине недостаточной значимости. Вот цитата из обсуждения "I don't see how Petr is notable in Wikipedia standards. What makes him different from the hundreds or maybe even thousands of others who are on a similar level as him at competitive programming?".
Кстати, вот статья о выдающемся олимпиаднике из Штатов Рейде Бартоне. Кто для истории более ценен?
Было бы здорово, если те кто вник в правила Википедиа высказались бы в обсуждении в поддержу статьи о Петре.
Кстати, статья в самом деле кажется неполной и недостаточно раскрывающей успехи Петра. Может кто-нибудь возьмется улучшить?
Комментарии?
Здравствуйте!
Завтра, 22-го января в 11:00 (Московское время), состоится Codeforces Round #104! Автором задач являюсь я, Герасимов Виталий (witua). Большое спасибо Артему Рахову (RAD) за помощь в подготовке задач и Марии Беловой (Delinur) за перевод условий на английский язык.
Надеюсь все пройдет хорошо и всем понравится.
До встречи на раунде!
Разбалловка задач:
DIV1: 500-1000-1500-2500-2500
DIV2: 500-1000-1500-2000-2500
Спасибо всем за участие, вот и результаты:
Дивизион 1:
Приглашаю всех желающих принять участие в моем первом контесте. Он будет проведен сегодня в 19:00(мск) на базе Codeforces тренировок.
Этот контест - часть эпической серии "Тренировки Самарского Международного Аэрокосмического Лицея", с которой некоторые из вас уже успели познакомиться. Проведен он был 12 ноября прошлого года.
Если dalex выложил свои два контеста просто в режиме тренировки, я хочу испытать на своем контесте возможности Codeforces тренировок для проведения соревнований.
Контест довольно легкий, наиболее интересен он будет, пожалуй, участникам второго дивизиона. Но если к нам заглянут красно-желтые участники и решат все пять задач за полчаса, я буду только очень рад =)
P.S. В для ввода/вывода будут использоваться файлы input.txt и output.txt - если вы получаете вердикт "решение зависло на первом тесте", значит вы забыли об этом.
Условия будут доступны в виде pdf файла.
Регистрация уже открыта.
UPD: Меня тут спросили, по каким правилам будет проводиться контест. Напоминаю: пока что тренировки поддерживают только ACM контесты.
UPD2: Если вдруг кто-то опоздал к началу, но хочет поучаствовать - знайте, что регистрация НЕ закрывается с началом тренировки.
UPD3: Тренировка была отложена на полчаса. Начало в 19:30.
Сегодня, 19-го января в 12:00 мы открываем новый проект Codeforces::Тренировки. Через 30 минут, в 12:30 мы начнем первую тренировку, на которой вы сможете познакомиться с системой. Продолжительность тренировки – 3 часа. Приглашаем вас принять участие! Как и всюду в Codeforces::Тренировки, будут использованы ACM-ICPC правила.
Так как будет проведена тренировка, то будут использованы задачи некоторого прошедшего соревнования (спасибо авторам!). Пожалуйста, не участвуйте в тренировке, если вы видели эти задачи. Не портите тренировку другим участникам. Спасибо за понимание.
UPD: Контест перенесен на 10 минут вперед. Все замечания по работе и предложения следует писать в виде комментариев в трекере проекта.
Доброго времени суток, друзья!
UPD: Разбор задач
Как говорится "Мы строили, строили и, наконец, построили". Или во всяком случае близки к этому.
19-го января 2012 года в 12:00 мы открываем подпроект "Тренировки" (по-английски мы назвали его "Gym", т.е. спортзал). Если коротко, то его цель предоставить сервис для того, чтобы на Codeforces вы могли не только участвовать в соревнованиях и обсуждать их, но и удобно тренироваться и тренировать.
В самом деле, при всем разнообразии online judges в мире, толкового сервиса для проведения тренировок не существует. Что хочется от такого сервиса:
- Наличие базы виртуальных контестов, составленных преимущественно из прошедших официальных соревнований.
- Возможность интегрировать результаты прошедших соревнований в виртуальные контесты, чтобы была возможность тренироваться "против" официальных участников.
- Возможность в любое время дня и ночи поучаствовать в тренировке, не боясь, что что-то сломается и сервер ляжет. Короче, надежность.
- Возможность как писать виртуальные контесты, так и дорешивать задачи.
- Возможность участвовать как индивидуально, так и в составе команды.
- Возможность менять состав при сохранении команды.
- Возможность просмотра разнообразных статистик и истории участий, возможность составления и публикации отчетов по выбранным участникам/контестам.
- Возможность тренеру самостоятельно добавить виртуальный контест, если такого еще нет. Процесс должен быть простым, надежным и максимально автоматизированным. Возможность запарсить таблицу результатов прошедших соревнований и добавить попытки официальных участников в виртуальный контест.
- Возможность смотреть решения других участников/тесты, если сам решил эту задачу.
- Возможность найти тренировку по вкусу, т.е. подбор по параметрам.
Проект Codeforces::Тренировки ставит перед собой цель выполнить все эти требования. Уже сейчас почти все из перечисленного доступно, а что таковым не является, то будет.
Всем привет.
Возможно, это будет не самое популярное изменение, но все-таки: у нас меняются правила подсчета голосов и голосования вообще. Почему? На то есть причины. Самое главное — мы решили отказаться от концепции +2/-1, как поощряющей авторов. Такой баланс отлично работал на начальном этапе развития Codeforces, сейчас же это приводит к тому, что слишком многие несодержательные посты набирают значительный плюс, да и оценка становится нерепрезентативной. Итак, теперь вес положительного голоса равен весу отрицательного, а знак суммарной оценки в самом деле характеризует отношение участников сообщество к посту или комментарию.
Кроме того, так как Codeforces — это профессиональное сообщество интересующихся спортивным программированием, то решено учитывать профессиональные достижения участников. Таким образом, вес голоса участника монотонным образом зависит от авторитета, которая определяется рейтингом. Сразу отмечу, что вклад не учитывается при подсчете авторитета. Разницы весов не являются колоссальными, несмотря на то, что красных в 15+ раз меньше синих, веса отличаются меньше.
Внедрены дополнительные fraud detection эвристики (некоторые уже были), которые свели на нет разнообразные случаи мошенничества, кровную месть, усложнили reverse engineering системы и подобную ерунду. Точные детали правил подсчета голосов не распространяются, но все основные принципы изложены выше.
Конечно, изменения правил подсчета голосов повлекут существенные изменения вклада для отдельных участников. Я полагаю, что это показатель характера распределения голосов и авторитета голосовавших. В ближайшее время будет сделан пересчет всех голосов, в результате поменяются вклады.
UPD. После исправления некоторых замеченных багов пересчет был запущен по-новой. Неправильно работала одна из эвристик (в частности, поэтому у dolphinigle были проблемы, его заминусовали) и были проблемы с отображением новых +/- (спасибо комментаторам).
MikeMirzayanov


