Блог пользователя Ripatti

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

A div2. Искомая строка — та, на которой звездочка встретилась ровно один раз, искомый столбец — тот, где звездочка встретилась только однажды. Перебрав все строки/столбцы и проверив количество звездочек в них, получаем ответ.

Авторы: MikeMirzayanov, Gerald

Полный текст »

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

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

Всем привет!

Сегодня будет проходить второй раунд Открытого чемпионата Москвы и МО по программированию (КРОК). Начало запланировано на 19:00.

Соревнование будет проходить по обычным правилам Codeforces, со взломами и падением баллов со временем. В Раунд 2 допускаются все участники, набравшие в Раунде 1 баллов не меньше участника на 300-ом месте. Все остальные участники могут участвовать в раунде вне конкурса. Специально для участников второго дивизиона подготовлена облегченная версия набора задач. Наборы задач официальной и неофициальной версий раундов частично пересекаются.

Контест будет рейтинговым для всех участников.

Вас ждет несколько задач, упорядоченных примерно по возрастанию сложности. Разбалловка задач как для первого, так и второго дивизиона стандартная (500-1000-1500-2000-2500). Не забывайте, что во время контеста решения будут тестироваться на небольшом наборе претестов. Тестирование на полном наборе тестов будет произведено после окончания раунда. Набор претестов не всегда покрывает все возможные случаи входных данных, поэтому внимательно тестируйте свои решения.

До окончания раунда категорически запрещается публиковать условия/решения задач. Запрещено общаться по теме задач, обсуждать какие либо мысли о возможном их решении. Давайте будем честными! Обсуждать задачи можно после окончания раунда.

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

Раунд готовили: Ripatti, havaliza, Gerald, RAD, MikeMirzayanov, Delinur.

Всем удачи!

UPD. Напоминаем, что 27 апреля в офисе компании КРОК состоится финал Открытого чемпионата Москвы и МО по программированию (КРОК). Обратите внимание, что компания КРОК не оплачивает дорогу и проживание участников финала. Все участники финала должны прибыть в офис компании КРОК (г. Москва) утром 27 апреля.

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

Рекомендуется заполнить форму независимо от ваших результатов в Раунде 2, поскольку отказаться может достаточно большое количество участников.

Полный текст »

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

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

A. Решение в лоб за O(n) (моделирование всех n раундов) получает TL. Ускорим наивное решение — рассмотрим раунды на отрезках [1..mk], [mk+1..2mk], [2mk+1..3mk] и так далее. Нетрудно заметить, что результаты раундов на этих отрезках будут повторяться. Поэтому промоделируем только один из этих отрезков, а затем учтем его [n/(mk)] раз ([x] — деление нацело). Остаточек из n%(mk) последних раундов промоделируем отдельно. Итого получаем решение за O(mk), которое легко проходит по времени.

Авторы — Ripatti и Gerald

Полный текст »

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

Автор Ripatti6 месяцев назад, По-русски

div2 A. В этой задаче нужно было найти длину ломаной, умножить ее на k / 50 и вывести что получилось. Длина ломанной --- сумма длин всех ее звеньев. Длина каждого звена считается по теореме Пифагора: .

Полный текст »

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

Автор Ripatti6 месяцев назад, По-русски

Привет всем!

Рад приветствовать вас на очередном раунде Codeforces. Надеюсь, что недавняя цветовая революция и несколько более позднее время проведения раунда внесут некоторое разнообразие в процесс решения задач:)

Автором задач сегодняшнего раунда являюсь я. Раунд помогал готовить RAD, на английский язык задачи перевела Delinur.

Всем удачи.

UPD.

Раунд окончен, рейтинги пересчитаны.

Победители div1:

1. Egor

2. tourist

3. unicef

4. sevenkplus

5. ivan.popelyshev


Победители div2:

1.

2. cjtoribio

3. miraliv

4. adrianoo

5. majia5

Ура!

Разбор задач.

Полный текст »

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

Автор Ripatti8 месяцев назад, По-русски


Сайт Ала Циммерманна вот уже долгое время лежит. Постоянные участники соревнований этого сайта долго ждали когда он вернется к рабочему состоянию и так и не дождались. Поэтому они создали свой собственный сайт и запустили свой контест в стиле azspcs с блэкджеком и студентками. Победитель получит ааавтомобиииль! футболку с логотипом ISS. Подробности по ссылке.

Полный текст »

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

Автор Ripatti9 месяцев назад, По-русски

A. (ссылка) Решение этой задачи описано в четвертом абзаце условия. Его надо было внимательно прочитать и реализовать. Единственная сложность которая могла возникнуть - как опередить какое достоинство старше. Для этого можно было двумя проходами по массиву [ '6', '7', '8', '9', 'T', 'J', 'Q', 'K', 'A' ] определить номера достоинств карт в массиве, а полученные числа сравнить.

Полный текст »

 
 
 
 

Автор Ripatti9 месяцев назад, По-русски

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

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

Раунд мне помогали готовить RADConnectorit4.kp, а также MikeMirzayanov. На английский язык условия перевела Delinur.

На этот раз контест будет проходить в старых добрых традициях Codeforces. Никаких нововведений, в меру короткие и понятные условия.

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

Всем удачи!


UPD. Раунд завершен, рейтинги обновлены.

Победители:

1. tsundere

2. jte

3. abacadaea

4. ltaravilse

5. Billy_Herrington

Разбор задач.

Полный текст »

 
 
 
 

Автор Ripatti9 месяцев назад, По-русски

A. (ссылка) В этой задаче нужно было сделать то, что было написано в условии. А именно: считать все имеющиеся навыки, затем степень их владения домножить на коэффициент k, после этого выкинуть все навыки, степень владения которых меньше 100. Далее нужно было добавить новые навыки (то только те, которых еще нет в списке). Полученный список отсортировать и вывести.

Полный текст »

 
 
 
 

Автор Ripatti9 месяцев назад, По-русски

Привет всем!

Я автор задач сегодняшнего раунда. Контест помогали готовить RADConnectorit4.kp. На английския язык условия перевела Delinur.

Этот контест будет тематическим. И тема контеста - Disgaea.

Можно ли выжить после урона, который выражается девятизначным числом?
Конечно, если количество здоровья выражается десятизначным числом.
фанаты о Disgaea

Disgaea: Hour of Darkness - это видеоигра в жанре тактическая RPG для консолей Playstation 2, PSP и Nintendo DS. Итак, знакомьтесь:

Этна, Лахарл и Флонн - главные персонажи игры

Задачи задействуют аспекты игровой механики. Они слегка адаптированы для задач и поэтому немного отличаются от оригинальных. Пожалуйста, используйте условия задач как формальные документы.

В некоторых задачах будут использованы анимированные картинки. Пожалуйста, перед началом контеста проверьте наличие поддержки форматов APNG или GIF у вашего браузера.

Разбалловка задач будет стандартная для контестов Codeforces:
500-1000-1500-2000-2500.

Всем удачи!

UPD. Контест завершен, рейтинги пересчитаны.
Победители:
1. KADR
2. neal
3. cerealguy
4. ivan.popelyshev
5. tourist

Разбор.

Полный текст »

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

Автор Ripatti10 месяцев назад, По-русски

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

Однако наивное решение не проходит по времени.

Авторское решение предполагает ускорение наивного решения при помощи битовых масок.

Полный текст »

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

Автор Ripatti11 месяцев назад, По-русски

A div2. В этой задаче можно было промоделировать весь процесс. А именно - рассматривать все минуты подряд и, в зависимости от того, какого цвета в данную минуту подошла кабинка, уменьшать соответствующую группу студентов G на min(|G|, 2), где |G| - размер группы. После этого нужно определить самую первую по счету минуту t, в которую все три группы опустеют. Тогда t + 30 будет ответом. Это решение за O(r + g + b).

Полный текст »

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

Автор Ripatti11 месяцев назад, По-русски

Привет всем!

Я автор задач сегодняшнего раунда. Раунд будет проходить сразу в двух дивизионах. Всего будет 7 задач, первые 5 из которых будут для второго дивизиона, а последние 5 - для первого.

О разбалловке. Сегодня она будет не совсем стандартная, а именно:
для див2: 500-1000-1500-2000-2000
для див1: 500-1000-1000-1500-2500
Так что будьте внимательны.

Раунд помогал готовить RAD. На английский язык задачи перевела Delinur.

Всем удачи и приятного времяпровождения.

UPD.
победители в первом дивизионе
1. peter50216
2. tourist
3. ACRush
победители во втором дивизионе
1. iamcs1983
2. zyx3d
3. seanwupi

Разбор задач.

UPD.
К сожалению, в авторском решении задачи E этого раунда была обнаружена ошибка. Спасибо участнику LinesPrower за ее обнаружение. Авторское решение было обновлено, а все решения перепроверены. Вскоре будут обновлены рейтинги всех участников, кроме Egor и Jacob. Мы приносим извинения за данный инцидент.

Полный текст »

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

Автор Ripatti13 месяцев назад, По-русски

A. Нужно было три раза подсчитать количество гласных букв в трех строках. Затем сравнить то, что получилось, с числами 5, 7 и 5. Если все совпало - вывести YES, иначе вывести NO.

Автор задачи - Ripatti.

Полный текст »

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

Автор Ripatti13 месяцев назад, По-русски
Добрый вечер.

Рад приветствовать вас всех на очередном бета раунде Codeforces.

Авторами задач сегодняшнего раунда являются Ripatti (это я) и Lepetrandr. Раунд помогали готовить it4.kp, MikeMirzayanov, RAD, Nerevar и dlevshunov. На английский язык задачи перевела Delinur.

Всем удачи!

UPD
Победитель - Neverauskas.
Разбор задач.

Полный текст »

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

Автор Ripatti13 месяцев назад, По-русски
A. Нужно было просто сделать то, что написано в условии. Единственный подводный камень в данной задаче - лидер может иметь отрицательное количество очков.

Полный текст »

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

Автор Ripatti13 месяцев назад, По-русски
Привет всем!

Автором задач сегодняшнего раунда буду я. Это мой третий контест на Codeforces и первый контест для первого дивизиона.

Я благодарю Артема Рахова, Марию Белову, Павла Кузнецова и Михаила Мирзаянова за помощь в подготовке раунда.

Веселых взломов!

Победитель - tourist.
Разбор задач.

Полный текст »

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

Автор Ripatti14 месяцев назад, По-русски
A. В этой задаче нужно было просто сделать то, что требуется в условии. А именно - последовательно считать слова. Для каждого слова определить длину L, его первую и последнюю буквы. Если длина слова не больше 10 - вывести слово без изменений, иначе - вывести первую букву, затем L - 2, а затем последнюю букву.

Полный текст »

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

Автор Ripatti14 месяцев назад, По-русски
Привет всем!

Автором задач сегодняшнего раунда буду я. Это мой второй раунд на codeforces. Надеюсь, он Вам понравится так же, как и первый.

Удачи!

UPD.
Победитель - unicef.
Разбор задач.

Полный текст »

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

Автор Ripatti15 месяцев назад, По-русски
A. Сначала считаем имена всех членов экипажа и их их статусы в массив. Затем за 4 прохода по массиву выведем сначала имена всех крыс (первый проход), затем имена всех женщин и детей (второй проход), затем имена всех мужчин (третий проход) и, наконец, за четвертый проход выведем имя капитана.

Полный текст »

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

Автор Ripatti15 месяцев назад, По-русски
Привет всем!

Автором задач сегодняшнего раунда являюсь я. Надеюсь, контест вам понравится :)

Я благодарю Артема Рахова, Марию Белову и Дмитрия Матова за помощь в подготовке раунда.

Удачи!

UPD.
Победитель - levlam.
Разбор задач.

Полный текст »

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

Автор Ripatti15 месяцев назад, По-русски
На сайте http://www.azspcs.net/ завершился очередной контест.
Контест трехмесячный, однако на данный сайт я наткнулся всего несколько недель назад. Решил поучаствовать, дабы, так сказать, распробовать новый вид соревнований.

Полный текст »

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

Автор Ripatti2 года назад, По-русски
Введение
После окончания Codeforces Beta Round #11 несколько участников захотели почитать что нибудь о задачах, похожих на задачу D этого раунда. Автор статьи, в целях помочь этим участникам, попытался найти подобную информацию, однако был удивлен, что ничего путного в интернете нет. Неизвестно, то ли автор плохо искал, то ли это действительно так, однако (на всякий случай), он решил написать собственную статью на эту тему.

В некотором смысле эту статью можно рассматривать как разбор задачи D 11го бета раунда.

Полный текст »

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