Автор Harbour.Space, история, 5 лет назад, По-английски

Hello, Codeforces!

We are thrilled to announce the second instalment of our Hello Muscat ICPC Programming Bootcamp, organized by Harbour.Space University in collaboration with Codeforces, ITMO University, GUtech University, and our local partner: Phaze Ventures. The Bootcamp’s main sponsor is British Petroleum (BP), supporting Oman’s national priorities: youth development, economic diversification and job creation.

We are also excited to let you know that Codeforces has become the main collaborator of Harbour.Space for our programming bootcamp series, and will be in charge of all the educational content, from contests to problem analysis and lectures, bringing the online legacy of the platform to a unique offline experience.

Hello Muscat will take place during 19 – 25 March 2020 and will feature ICPC world champions and finalists as well as legendary names from the field of competitive programming:

Mike MikeMirzayanov Mirzayanov, Nikolai KAN Kalinin, Andrey andrewzta Stankevich, Artem VArtem Vasilyev, Mikhail darnley Dvorkin, and more coaches to be announced soon!

The bootcamp will be available to teams of different skill levels, separated by two divisions of difficulty:

  • Division B: Designed to help teams prepare for the next season of ICPC regional competitions.
  • Division C: Designed for newcomers to the world of ICPC competitive programming. This division is the perfect starting point for those with a handle on the basics but who want to compete in future competitions and possible regionals.

Single participants and teams must register before January 30th to receive the 15% off Early Bird Discount.
Universities and individual participants that took part in our previous bootcamps and who register for this edition will receive the 20% off Loyalty Discount.

That’s all from us. Head over to our webpage to find out more, and see you in Muscat!

REGISTER HERE→

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

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

Автор adamant, история, 5 лет назад, По-английски

Hi everyone!

This summer I gave another contest in summer Petrozavodsk programming camp and (although a bit lately) I want to share it with codeforces community by adding it to codeforces gym: 2018-2019 Summer Petrozavodsk Camp, Oleksandr Kulkov Contest 2. To make it more fun I scheduled it on Sunday, 5 january, 12:00 (UTC+3). Feel free to participate during scheduled time or, well, whenever you're up to. Good luck and have fun :)

Problems might be discussed here afterwards, I even may write some editorials for particular problems (per request, as I don't have them prepared beforehand this time).

UPD: 17h reminder before the start of the contest

UPD2: It wasn't an easy task to do, but I managed to add ghost participants to the contest! Enjoy!

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

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

Автор ko_osaga, 5 лет назад, По-английски

새해 복 많이 받으세요, 코드포스! (Happy new year, Codeforces!)

Welcome to the first Codeforces Round of the new decade, Hello 2020! The round will be held on Jan/04/2020 15:05 MSK.

Some information about the round:

  • Div 1, 2 combined
  • 2.5 hours!
  • 7 problems!
  • No subtasks!
  • Score distribution: 500-1250-1750-2500-2750-4000-4000
  • Yes, it is rated!

This round is prepared by ko_osaga nong ckw1140. I am personally very thrilled to deliver my first Codeforces contest as such a memorable one!

More credits for the contest:

UPD: Editorial. Thank you for your participation!

UPD2: Winners:

  1. mnbvmar
  2. TLE
  3. Benq
  4. tourist
  5. gamegame
  6. never_giveup
  7. dario2994
  8. yosupo
  9. Marcin_smu
  10. kczno1

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

Анонс Hello 2020
  • Проголосовать: нравится
  • +1231
  • Проголосовать: не нравится

Автор MikeMirzayanov, 5 лет назад, По-английски

I am happy to wish you a Happy New Year! I wish you a great, bright, interesting New Year! Just believe that it can become so: difficulties will be left behind, and ahead of you will be a joy of victories and discoveries.

I wish all of us new interesting problems, records and achievements! Set new goals and be sure to try to achieve them! And do not go far, we will try to make your 2020 year more fun!

I thank with all my heart for the contribution to the community of coordinators, problem writers, testers, and those who wrote interesting posts and comments. Many thanks to the sponsors, partners and customers: you help the community not to stand still, give the opportunity to hold interesting events. Thanks to all visitors to the website and just not indifferent.

See you in the new year!

MikeMirzayanov

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

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

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

Привет!

Мне кажется все последние годы я что-то писал прям в то время, пока все нормальные люди отмечают Новый год. Это прям традиция какая-то. Собственно, большая часть базовой функциональности Codeforces была написана в новогодние праздники 2010-го года: авторизация, блоги, базовая поддержка соревнований.

Возможно, я хочу провести и следующий год с интересом что-то улучшая в инфраструктуре Codeforces (да-да, как Новый год встретишь — так его и проведёшь). А может просто в Новый год вроде работать не обязательно и делаешь не то, что вот прям сейчас надо, а то, что хорошо бы когда-нибудь сделать.

В этот раз я выделил чуток времени, чтобы добавить в testlib поддержку разбора параметров командной строки. Мне очень не нравится в генераторах писать такое int n = atoi(argv[3]);. Собственно по нескольким причинам:

  • небезопасно к тому, что 3-го параметра командной строки может и не быть;
  • небезопасно к тому, что 3-й параметр командной строки может не оказаться корректным 32-х битным целым числом.

Теперь вместо этого следует писать так: int n = opt<int>(3);. Кроме того, вы может писать и такое int64_t m = opt<int64_t>(1);, такое bool t = opt<bool>(2); или даже string s = opt(4);.

Кроме того, я поддержал именованные параметры. Если параметров слишком много, то запись g 10 20000 a true менее читаемая чем g -n10 -m200000 -t=a -increment.

В таком случае теперь вы можете использовать такие сниппеты кода в вашем генераторе:

int n = opt<int>("n");
long long n = opt<long long>("m");
string t = opt("t");
bool increment = opt<bool>("increment");

Вы можете свободно смешивать чтение параметров по индексу и по именам.

Поддерживаются следующие варианты записи именнованных параметров:

  • --key=value или -key=value;
  • --key value или -key value — если value не является стартом нового параметра (не начинается с дефиса или после одного/двух дефисов не идёт буква);
  • --k12345 или -k12345 — если ключ k это одна буква и затем идёт цифра;
  • -prop или --prop — для включения булевских свойств.

Ниже записаны примеры для запуска нескольких вымышленных генераторов:

g1 -n1
g2 --len=4 --s=oops
g3 -inc -shuffle -n 5
g4 --length 5 --total 21 -ord

Возможно, я в торопях написал что-то не очень удачно или даже с багами. Предлагаю вам посмотреть в мои последние коммиты. Буду рад дельным предложениям или фиксам.

Спасибо за внимание.

А какие у вас есть традиции на Новый год?

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

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

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

Добрый день, дорогие пользователи Codeforces!

9 ноября начался заочный этап XIV Открытой олимпиады школьников по программированию. В контест уже добавлены все задачи!

Те из вас, кто знает что такое Открытая олимпиада (она же "заочка") и её правила, могут не читать дальше и сразу переходить на сайт олимпиады :)

Те, кто раньше в данной олимпиаде не участвовал, могут так же пойти на сайт и прочитать полную информацию там, а в этом посте будут обозначены лишь основные моменты. Олимпиада состоит из трёх этапов: длинного заочного тура, короткого заочного тура и очного.

Длинный тур заочного этапа проходит с 9 ноября по 15 января, и традиционно состоит из 10 задач различной сложности, тематики и формата. Мы подбираем задачи таким образом, чтобы они были интересны как совсем новичкам, так и "зубрам" олимпиадной информатики. Лучшие $$$n$$$ участников будут сразу приглашены на очный этап олимпиады. Следующие $$$k$$$ участников будут приглашены на короткий тур.

Короткий тур заочного этапа проходит с 24 по 27 января в формате пятичасового виртуального контеста. Это означает, что в течение этих четырёх дней каждый участник должен выбрать пять часов и написать тур в режиме реального соревнования. Итоговый список приглашённых на очный этап формируется именно по сумме баллов в двух турах, кроме участников, приглашённых непосредственно по результатам длинного тура.

Очный этап пройдёт в Москве, ориентировочные даты проведения — 5-7 марта. Площадка проведения — учебный центр нашего генерального спонсора 1С на м. Тимирязевская. Также, благодаря нашему спонсору, участникам оплачивается проживание в гостинице на время проведения олимпиады. Очный этап состоит из двух туров, уровень участников немного превосходит уровень Всероссийской олимпиады по информатике за счёт приезда сильных школьников из ближнего зарубежья. Возможно это прозвучит слишком пафосно, но на наш вкус качество задач олимпиады в последние годы превосходит Всероссийскую олимпиаду и сравнимо с IOI. Олимпиада имеет первый уровень и даёт соответствующие льготы при поступлении.

Призеры заочного этапа олимпиады никаких льгот не имеют — поступить, не выходя из дома, всё-таки не получится.

Для тех, кто не является школьником и хочет просто порешать задачи, доступно внеконкурсное участие.

Жюри олимпиады призывает всех участников действовать честно, не обсуждать друг с другом решения задач длинного и не делиться написанным кодом до окончания тура. Так же Особенно хотим отметить, что любое обсуждение задач запрещено, в частности, и в комментариях на Codeforces (в том числе, и к этому посту). Все интересующие вас вопросы по задачам вы можете и должны задавать через тестирующую систему. К сожалению, каждый год некоторые участники заочного этапа не допускаются к участию в очном этапе из-за выявления случаев списывания с их участием.

Любые оставшиеся вопросы смело задавайте в комментариях.

Задачи длинного тура, под руководством vintage_Vlad_Makeev, ch_egor, для вас готовили:

A) Автор идеи vintage_Vlad_Makeev, подготовил ch_egor.

B) Автор идеи vintage_Vlad_Makeev, подготовил KiKoS.

C) Автор идеи V--o_o--V, подготовил voidmax.

D) Автор идеи V--o_o--V, подготовил ch_egor.

E) Авторы идеи meshanya, vintage_Vlad_Makeev, ch_egor, подготовил ch_egor.

F) Автор идеи glebushka98, подготовили GreenGrape, Sehnsucht.

G) Автор идеи vintage_Vlad_Makeev, подготовил cdkrot.

H) Авторы идеи vintage_Vlad_Makeev, vintage_Vlad_Makeev, подготовил Sehnsucht.

I) Автор идеи и разработчик voidmax.

J) Автор идеи и разработчик isaf27.

UPD1:

Длинный тур закончился, доступны предварительные результаты длинного отборочного тура. Результаты будут объявлены окончательными после проведения проверки на списывание.

Решением жюри на очный тур соревнований приглашаются все конкурсные участники, набравшие в длинном отборочном туре не менее 800 баллов. Конкурсные участники, набравшие не менее 350 и не более 799 баллов, приглашаются к участию в коротком отборочном туре. Напоминаем что короткий тур пройдет с 24 по 27 января в формате пятичасового виртуального контеста.

После окончания короткого тура будет организовано отдельное соревнование, в котором могут принять участие все желающие написать короткий тур вне конкурса.

UPD2:

Опубликовано описание правил короткого тура и ссылка на вход в соревнование. Если вы проходите на короткий тур по указанным выше границам баллов, но не можете зайти в соревнования — напишите об этом в оргкомитет.

Начать виртуальный тур можно будет с 00:00:00 24 января до 23:59:59 27 января (московское время).

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

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

Автор antontrygubO_o, 5 лет назад, перевод, По-русски

Снова привет, Codeforces!

Мы ради пригласить вас на Mathforces Thinkforces Good Bye 2019, который пройдет 29.12.2019 17:05 (Московское время).

Немного информации о раунде:

  • Рейтинговый для всех участников!
  • 3 часа!
  • Никаких подзадач!
  • В раунде будет интерактивная задача . Вы можете ознакомиться с руководством по интерактивным задачам здесь
  • Разбор будет опубликован сразу после окончания системного тестирования

Все задачи в этом раунде были приготовлены нами, antontrygubO_o и 244mhq. Мы долго работали над эти раундом и постарались сделать все задачи очень интересными. Надеемся, вам понравится раунд!

Мы бы хотели поблагодарить:

Количество задач и разбаловка будут обьявлены незадолго до раунда (или раньше).

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

UPD1: Пользуясь случаем, хотелось бы прорекламировать сражение между tourist и Um_nik, которое начнется через пол часа после окончания этого раунда.

UPD2: В последнем контесте десятилетия на Codeforces будет 9 задач .

Разбалловка:

500 — 1000 — 1500 — 2000 — 2750 — 3250 — 3750 — 4000 — 4500

UPD3: Разбор

UPD4:

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

  1. Radewoosh
  2. Um_nik
  3. yosupo
  4. FizzyDavid
  5. ksun48
  6. isaf27
  7. Petr
  8. WZYYN
  9. AndreySergunin
  10. saba2000

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

Анонс Good Bye 2019
  • Проголосовать: нравится
  • +1517
  • Проголосовать: не нравится

Автор scott_wu, история, 5 лет назад, По-английски

Hey all!

We've created a new 1v1 programming contest format: Lockout. Like in most contests, each round has a set of problems and contestants work to solve them as quickly as they can. In Lockout, however, contestants compete head-to-head and only the first contestant to solve each problem gets the points. Contestants can work on problems in any order, so speed and strategy are crucial to avoid getting sniped! The head-to-head action also makes the contest much more exciting for viewers.

We ran the first edition of Lockout at TCO Finals last month as a double-elimination bracket tournament. All of the finalists who were available competed (and even some of the problem writers) and we got to see a lot of exciting back-and-forth matches! As you can see though, there's still one set left to play. So we'll be streaming Grand Finals of Lockout 0 featuring tourist vs. Um_nik at 9:30 AM PST, right after the end of Good Bye 2019 on Sunday. Tune in at twitch.tv/ttocs45 to see the finals with live commentary from myself and ecnerwala! We'll watch the screens and scoreboard live, talk to tourist and Um_nik to hear their strategies, and even have a special exhibition match afterwards. :)

The finals will feature five problems with the following scoring: 100 — 200 — 300 — 400 — 500. There are 1500 points total, so the first person to get 800 or more points will be the winner. What strategies would you try? Start with A and B, then jump to E if you get them both? Or start with E, and try to win outright with either C or D afterwards? Read all the problems first and then choose a strategy based on what your opponent solves first? Let us know your thoughts!

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

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

Автор vovuh, история, 5 лет назад, По-русски

Обратите внимание на необычное время старта раунда.

UPD: Мы не можем хорошо оценить сложность некоторых задач, поэтому рекомендуем вам прочитать все задачи и подумать над каждой из них.

<almost-copy-pasted-part>

Привет! В 28.12.2019 20:05 (Московское время) начнётся Codeforces Round 611 (Div. 3) — очередной Codeforces раунд для третьего дивизиона. В этом раунде будет 6 или 7 задач (или 8), которые подобраны по сложности так, чтобы составить интересное соревнование для участников с рейтингами до 1600. Однако все желающие, чей рейтинг 1600 и выше могут зарегистрироваться на раунд вне конкурса.

Раунд пройдет по правилам образовательных раундов. Таким образом, во время раунда задачи будут тестироваться на предварительных тестах, а после раунда будет 12-ти часовая фаза открытых взломов. Я постарался сделать приличные тесты — так же как и вы буду расстроен, если у многих попадают решения после окончания контеста.

Вам будет предложено 6 или 7 (или 8) задач и 2 часа на их решение.

Штраф за неверную попытку в этом раунде (и последующих Div. 3 раундах) будет равняться 10 минутам.

Напоминаем, что в таблицу официальных результатов попадут только достоверные участники третьего дивизиона. Как написано по ссылке — это вынужденная мера для борьбы с неспортивным поведением. Для квалификации в качестве достоверного участника третьего дивизиона надо:

  • принять участие не менее чем в двух рейтинговых раундах (и решить в каждом из них хотя бы одну задачу),
  • не иметь в рейтинге точку 1900 или выше.

Независимо от того являетесь вы достоверными участниками третьего дивизиона или нет, если ваш рейтинг менее 1600, то раунд для вас будет рейтинговым.

Спасибо MikeMirzayanov за платформы, помощь с идеями для задач и координацию моей работы. Спасибо моим очень хорошим друзьям Дарье nooinenoojno Степановой, Михаилу awoo Пикляеву, Максиму Neon Мещерякову и Ивану BledDest Андросову за помощь в подготовке и тестирование раунда.

Удачи!

Также хочу сказать, что участники, намеренно отправляющие неверные решения и взламывающие их после окончания соревнования (пример), не будут показаны в таблице лидеров по взломам.

</almost-copy-pasted-part>

UPD2: Разбор опубликован!

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

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

Автор cannor147, история, 5 лет назад, По-русски

Привет, Codeforces!

Мы вместе с MikeMirzayanov и geranazavr555 решили выкатить небольшое предновогоднее обновление раздела переписок. Теперь у вас появилась возможность ограничить круг лиц, которые могут отправлять вам сообщения. А именно: вы можете запретить пользователю писать вам, скрывать отправленные пользователем сообщения или же всё вместе.

Также, некоторые пользователи могли испытывать неудобства, получая много бесполезных сообщений. Теперь вы можете выбрать минимальный рейтинг пользователей, которые могут вам отправлять сообщения. Это правило никак не повлияет на уже существующие диалоги. Также ваши ограничения не коснутся пользователей, которых вы добавили в друзья, и административные аккаунты Codeforces.

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

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