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

Автор DmitryGrigorev, история, 4 года назад, По-английски

Actually, the solution to the Grakn Forces F problem seems pretty easy, but somehow I didn't come up with the intended one. I wrote some solution making $$$O(n \cdot log^2(n))$$$ queries in the worst case, which I actually didn't even seriously suppose to pass.

After the contest, I run the stress and it turned out that the solution fails in plenty of tests (around $$$1000$$$ numbers specifically).

It would definitely be caught if the number of tests was greater. It seems that there are not more than $$$10$$$ tests that pretend to be random (except very small numbers and very large numbers that I tested by myself). So my question is — what is the reason for this number to be so small?

I believe that tests must distinguish proper solutions and some shit like this that works very sometimes if it's possible. I understand the point that sometimes it's hard to generate tests, but here we just needed to have only a sufficient number of random tests to hack my solution, but definitely more than $$$10$$$. Here I had ~$$$50$$$ % chance to pass these $$$10$$$ tests, that's what actually happened.

300iq, what is your opinion?

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

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

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

(Идея задачи Div2A — ScreaMood)

(Разрабатывал задачу Div2A — DmitryGrigorev)

Tutorial is loading...

Код

(Идея задачи Div2B — kirillbogatiy)

(Разрабатывал задачу Div2B — DmitryGrigorev)

Tutorial is loading...

Код

(Идея задачи Div1A — Mr.Hakimov)

(Разрабатывал задачу Div1A — Mr.Hakimov)

Tutorial is loading...

Код

(Идея задачи Div1B — DmitryGrigorev)

(Разрабатывал задачу Div1B — PeregudovSergey)

Tutorial is loading...

Код

(Идея задачи Div1C — ----------)

(Разрабатывал задачу Div1C — ----------)

Tutorial is loading...

Код

(Идея задачи Div1D — DmitryGrigorev)

(Разрабатывали задачу Div1D — ---------- и DmitryGrigorev)

Tutorial is loading...

Код

Читайте этот комментарий от saketh про другое решение этой задачи.

(Идея задачи Div1E — DmitryGrigorev)

(Разрабатывал задачу Div1E — TheWayISteppedOutTheCar)

Tutorial is loading...

Код

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

Разбор задач Codeforces Round 569 (Div. 1)
Разбор задач Codeforces Round 569 (Div. 2)
  • Проголосовать: нравится
  • +105
  • Проголосовать: не нравится

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

Привет, Codeforces!

Я рад пригласить всех на Codeforces Round 569 (Div. 1) и Codeforces Round 569 (Div. 2), которые состоится завтра, в пятницу, 21 июня 2019 г. в 19:35. Раунд будет рейтинговым для обоих дивизионов.

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

Свои задачи на раунд предложили Иван ScreaMood Фёдоров, Кирилл kirillbogatiy Бессонов, Мухаммаджон Mr.Hakimov Хакимов, Федор ---------- Ушаков, Фёдор Kuyan Куянов и я, Дмитрий DmitryGrigorev Григорьев.

Раунд готовили мы, Дмитрий DmitryGrigorev Григорьев, Фёдор ---------- Ушаков, Дмитрий TheWayISteppedOutTheCar Пискалов и Мухаммаджон Mr.Hakimov Хакимов.

Спасибо Ильдару 300iq Гайнуллину за отличное координирование раунда, Sooke furry Gnar, Xiuhan sunset Wang, Ziqian TLE Zhong, Junzhao FizzyDavid Yang, Jiaxuan samjia2000 Gao за тестирование, а также Михаилу MikeMirzayanov Мирзаянову за великолепные платформы Codeforces и Polygon!

В каждом дивизионе будет предложено 5 задач и 2 часа на их решение. На протяжении раунда вы будете помогать ученикам одной обычной московской школы в их обычных повседневных делах. Разбалловка раунда будет традиционно объявлена ближе к раунду.

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

Ждём вас на контесте!

UPD Разбалловка Div.2 раунда стандартная — 500-1000-1500-2000-2500

Разбалловка Div.1 раунда — 500-1000-1500-1750-2250

UPD2

Вот список победителей:

Div.2

  1. PSMaoTheKingOfAzerbaijan

  2. atacan

  3. Shayan.Kashefi_A

  4. LiPro

  5. BrutBurger

Div.1

  1. Radewoosh

  2. ACRush

  3. ecnerwala

  4. mango_lassi

  5. neal

Наши поздравления победителям!

Разбор задач

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

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

Автор DmitryGrigorev, история, 6 лет назад, перевод, По-русски

(Идея задачи A — ----------)

Tutorial is loading...

Код

(Идея задачи B — IbragiMMamilov)

Tutorial is loading...

Код

(Идея задачи C — usertab34)

Tutorial is loading...

Код

(Идея задачи D — Denisson)

Tutorial is loading...

Код

(Идея задачи E — Ralsei)

Tutorial is loading...

Код

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

Разбор задач Codeforces Round 546 (Div. 2)
  • Проголосовать: нравится
  • +61
  • Проголосовать: не нравится

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

Привет, Codeforces!

Я рад пригласить всех на раунд #546 Codeforces, который состоится послезавтра, в понедельник, 11 марта 2019 г. в 19:35. Раунд будет рейтинговым для всех участников из второго дивизиона (то есть для участников с рейтингом меньше, чем 2100). Как обычно, мы будем очень рады видеть всех участников из первого дивизиона на нашем контесте вне конкурса!

Это первый контест от нашего проекта "Обсуждаем задачи". Если у вас есть интересные задачи, то присылайте их нам, и, если они окажутся хорошими, вскоре мы дадим их на аналогичный раунд (возможно, и Div1). Вот ссылка на программный пост.

Свои задачи на раунд предложили Фёдор ---------- Ушаков, Степан IbragiMMamilov Стёпкин, Алексей usertab34 Розе, Денис Denisson Шпаковский и Александр Ralsei Гладков.

Раунд готовили мы, Дмитрий DmitryGrigorev Григорьев, Фёдор ---------- Ушаков, Семен cookiedoth Савкин и Дмитрий TheWayISteppedOutTheCar Пискалов.

Спасибо Ильдару 300iq Гайнуллину за отличное координирование раунда и Григорию vintage_Vlad_Makeev Резникову, Алексею Aleks5d Упирвицкому и Мохаммеду mohammedehab2002 Эхабу за тестирование раунда, а также Михаилу MikeMirzayanov Мирзаянову за великолепные платформы Codeforces и Polygon!

Вам будет предложено 5 задач и 2 часа на их решение. На протяжении раунда вы будете помогать необычной девочке Насте, которая учится в обычной школе в Байтландии. Разбалловка раунда будет традиционно объявлена ближе к раунду.

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

Ждём вас на контесте!

UPD Разбалловка раунда стандартная — 500-1000-1500-2000-2500

UPD2 Спасибо всем за участие!

Вот список победителей:

Div.2

  1. woookje

  2. 1021869

  3. stanislav.bezkorovainyi

  4. Hamzqq9

  5. ilyausmanov

Div.1 + Div.2

  1. kmjp

  2. step_by_step

  3. TangentDay

  4. ..vince

  5. hitman623

Наши поздравления победителям!

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

UPD3

Разбор задач

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

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

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

Введение

Здравствуйте! Мы любим Codeforces и хотим, чтобы там были классные контесты и как можно больше людей получали удовольствие от участия. Поэтому мы решили создать проект, который называется «Обсуждаем задачи». Мы не связаны напрямую с администрацией Codeforces, однако у нас есть поддержка и одобрение от MikeMirzayanov, и мы очень надеемся на содействие его и координаторов контестов.

В чем суть проекта?

Суть проста — вы присылаете нам в Telegrame или VK (ниже указаны адреса) свои задачи в любом количестве с указанием предполагаемой сложности (можно даже одну; нужно только, чтобы была хотя бы одна задача уровня не ниже Div2C) . Таким образом, вы передаете интеллектуальные права на задачу нам, и обязуетесь при этом далее не использовать ее ни в каком виде, в том числе в предложениях контестов на Codeforces или иных платформах, а также гарантируете, что она еще нигде не использована и никуда не предложена; далее возможны два варианта.

  • Мы принимаем ваши задачи. Затем они вместе с задачами других авторов попадут в собранный нами контест на Codeforces, и после него мы выплатим вам деньги за эти задачи в размере 80 % от обычной стоимости задачи.

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

До ревью вы можете в любой момент отозвать задачу.

Так как пока мы не знаем, насколько хорошо это будет работать, то для начала мы хотели бы собрать таким образом 1-2 пилотных контеста. Если все пойдет как надо, то мы продолжим свою работу в таком режиме.

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

Куда присылать задачи?

VK — Группа VK (в сообщения группы)

Telegram — бот @task_idea_bot

Ниже описано, в каком формате нужно присылать задачи.

Кто — мы?

  • Золотой медалист EJOI, абсолютный победитель IATI, победитель всероссийской олимпиады школьников, абсолютный победитель ВКОШП, гроссмейстер Семен cookiedoth Савкин
  • Победитель всероссийской олимпиады школьников, абсолютный победитель ВКОШП Дмитрий TheWayISteppedOutTheCar Пискалов
  • Серебряный медалист NEERC, призер всероссийской олимпиады школьников, гроссмейстер Дмитрий DmitryGrigorev Григорьев
  • Призер всероссийской олимпиады школьников, призер EJOI, IATI и ВКОШП Фёдор ---------- Ушаков
  • Победитель всероссийской олимпиады школьников, абсолютный победитель ВКОШП Фёдор Kuyan Куянов

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

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

Автор DmitryGrigorev, история, 7 лет назад, перевод, По-русски

Все задачи подготовлены нами — DmitryGrigorev и ----------.

(Идея задачи — DmitryGrigorev)

Tutorial is loading...

Код — 39423470

(Идея задачи — GreenGrape)

Tutorial is loading...

Код — 39423481

(Идея задачи — ----------)

Tutorial is loading...

Код — 39423497

(Идея задачи — DmitryGrigorev)

Tutorial is loading...

(Идея задачи — DmitryGrigorev)

Код — 39423501

Tutorial is loading...

Код решения I — 39423519

Код решения II — 39418926. Попытайтесь оптимизировать :)

Спасибо tfg за идею и код решения III. Хорошая работа!

Код решения III — 39392321

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

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

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

Привет, Codeforces!

Я рад пригласить всех на раунд #489 Codeforces, который состоится уже завтра, в понедельник, 18 июня 2018 г. в 19:35. Раунд будет рейтинговым для всех участников из второго дивизиона (то есть для участников с рейтингом меньше, чем 2100). Как обычно, мы будем очень рады видеть всех участников из первого дивизиона на нашем контесте вне конкурса!

Задачи на этот раунд придумывали и готовили мы, ученики московской школы №2007, Дмитрий DmitryGrigorev Григорьев и Фёдор ---------- Ушаков. Большое спасибо Андрею GreenGrape Райскому за помощь в подготовке задач и тестировании раунда, Ильдару 300iq Гайнуллину и Амиррезе Arpa Пурахавану за помощь в тестировании раунда, а также координатору Николаю KAN Калинину за то, что наши зачастую странные и непродуманные идеи превратились в раунд Codeforces и, конечно, Михаилу MikeMirzayanov Мирзаянову за потрясающие платформы Codeforces и Polygon.

Вам будет предложено 5 задач и 2 часа на их решение. На протяжении раунда вы будете помогать необычной девочке Насте, которая живет в Байтландии и которой на день рождения дарят очень странные подарки :). Разбалловка раунда будет традиционно объявлена ближе к раунду.

Для нас обоих это первый и, надеюсь, не последний раунд на Codeforces, и я надеюсь, что вам понравятся наши задачи. Прочитайте условия всех задач. В любом случае, всем удачи и высокого рейтинга!

Ждём завтра на контесте!

UPD Разбалловка раунда стандартная — 500-1000-1500-2000-2500

UPD2 Спасибо всем за участие в раунде! Я очень надеюсь, что наши задачи вам понравились; если нет, то я постараюсь порадовать вас на следующем своем контесте :).

Список победителей контеста:

Div.2

  1. sminem

  2. NguoiHocTinLoai2

  3. YaKon4ick

  4. HanaElhami

  5. pajenegod

Div.1 + Div.2

  1. dotorya

  2. Benq

  3. anta

  4. sminem

  5. kevinsogo

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

UPD3

Разбор тут

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

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

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

Can anybody help me with this task: We have a tree with N verteces(N<=5*10^5). Each edge has got a length Li(Li<=1000). In each iteration we delete one(given) of un-deleted edges and we must tell the longest simple way in each of two resulting components and we doing it while all edges aren't deleted. Please, any ideas how to solve it?

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

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