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

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

Привет.

В весеннем семестре я вёл в СПбГУ спецсеминар под названием «Динамическое программирование». Чтобы получить зачёт, участники решали много тренировочных задач, а ещё — готовили свою собственную задачу в Полигоне.

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

В каждой тренировке есть и простые, и сложные задачи. Большинство задач — учебные. Думаю, оранжевым и ниже — задач хватит на всю тренировку. Задачи идут в случайном порядке.

Успехов!  

Обновление 1: после второй тренировки будет выложен краткий текстовый разбор. К первой тренировке разбор пока не готов, но тоже когда-нибудь будет.

Обновление 2: спасибо авторам задач!

  • Марат Аграновский
  • Павел Балай
  • Николай Березиков
  • Тимур Гараев (the_timur)
  • Александра Дурнева
  • Иван Казменко (Gassa)
  • Игорь Киселёв
  • Мария Козловцева
  • Софья Копейкина (30SK5)
  • Игорь Коркин
  • Антон Кузнец (Astronomax)
  • Максим Мильшин
  • Даниил Павленко
  • Сергей Петров (petsernik)
  • Макар Селиванов (mselivanov)
  • Александр Тульчинский (TulchinskijA)
  • Илья Тюряев
  • Алёна Черепанова (Monic)

Обновление 3: готов разбор первой тренировки.

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

»
23 месяца назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

Is the contest open to everyone?

If yes Contest Link is not working. May be uploading an invitation link or group link will work.

»
23 месяца назад, скрыть # |
 
Проголосовать: нравится +8 Проголосовать: не нравится

Как раз хотел сегодня порешать дп. Спасибки.

»
23 месяца назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

What is the estimated rating for the problems ? or they're just educational problems ?

»
23 месяца назад, скрыть # |
 
Проголосовать: нравится +13 Проголосовать: не нравится

Будет разбор потом?

  • »
    »
    23 месяца назад, скрыть # ^ |
     
    Проголосовать: нравится +8 Проголосовать: не нравится

    Суть дп в использовании очередности вычислений и запоминании результатов. Как введение,

    105239B:
»
23 месяца назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

Can anyone help what is wrong with my submission here for Problem G of Day-2, it gives WA on tc-3?

Spoiler
»
23 месяца назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

In H it's pretty obvious how to write the code, but when to logically decide when vasya wins or peter?

»
22 месяца назад, скрыть # |
Rev. 3  
Проголосовать: нравится +11 Проголосовать: не нравится

271027559 Hey can any one check the issue in my code. I think it aligns with the intended solution but WAs on test case 5. Since the cases aren't visible I'm not exactly sure of the issue. Can one of the authors/managers please clarify?

Spoiler

Edit: Never mind got it. I was having a take not take style rec which was causing WA.Just removing that and iterating over the array fixed it

  • »
    »
    22 месяца назад, скрыть # ^ |
     
    Проголосовать: нравится +3 Проголосовать: не нравится

    Consider this line:

    ll res = max(1LL, rec(pos + 1, N, diff, ok));

    This assumes we can just skip an element of the array, and move on. In doing so, however, we lose the information about the previous element taken.

    details
»
22 месяца назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

I was solving problem I. Path and K Vertices. My solution is pretty much same as the editorial. I am maintaining two sets for finding k larger elements while using dfs. But this gives me wrong answer. can somebody tell me what is wrong in my solution.

Solution