Добрый день!
Сегодня в 19:30 МСК в Тренировках состоится Новогодний контест. Приглашаю всех поучаствовать.
С наступающим!
Добрый день!
Сегодня в 19:30 МСК в Тренировках состоится Новогодний контест. Приглашаю всех поучаствовать.
С наступающим!
| № | Пользователь | Рейтинг |
|---|---|---|
| 1 | Benq | 3792 |
| 2 | VivaciousAubergine | 3647 |
| 3 | Kevin114514 | 3611 |
| 4 | jiangly | 3583 |
| 5 | strapple | 3515 |
| 6 | tourist | 3470 |
| 7 | Radewoosh | 3415 |
| 8 | Um_nik | 3376 |
| 9 | maroonrk | 3361 |
| 10 | XVIII | 3345 |
| Страны | Города | Организации | Всё → |
| № | Пользователь | Вклад |
|---|---|---|
| 1 | Qingyu | 162 |
| 2 | adamant | 148 |
| 3 | Um_nik | 146 |
| 4 | Dominater069 | 143 |
| 5 | errorgorn | 141 |
| 6 | cry | 138 |
| 7 | Proof_by_QED | 136 |
| 8 | YuukiS | 135 |
| 9 | chromate00 | 134 |
| 10 | soullless | 133 |
| Название |
|---|



Как решалась В?
Я решал динамикой d[сколько прошли указов][предпоследний взятый указ][последний взятый указ]. Переход за O(1) — берем указ / не берем.
Ой, пропустил в условии строчку про то, что порядок указов должен остаться таким же :(
Тогда понятно как решать, спасибо.
Интересно, а за сколько можно решать аналогичную задачу, если расставлять указы можно в любом порядке?
А разве не прокатит отсортировать и пустить ту же динамику?
Теперь же мы можем добавлять точки с двух сторон (и динамика получится четвертой степени). Или я не правильно понял идею?
Резонный вопрос: как решать H?
Предположим, что число в инпуте длиной n равно сумме двух зеркальных чисел длиной тоже n. Тогда мы знаем сумму первой и последней цифры ответа — она равна последней цифре числа из инпута (так как мы знаем, что переноса разряда не было). Отнимем эту сумму в двух местах — в начале и в конце, а на место первой и последней цифры в ответе поставим любые две, которые дают такую сумму. По сути, мы перешли к задаче меньшего на 2 размера.
Аналогично предположим, что число из инпута — сумма чисел длины n-1. Тогда мы знаем сумму первой и последней цифры с учётом, что перенос разряда был. И так далее, и тому подобное.
Невозможность проверяется, к примеру, выходом суммы на каком-то шаге за границы [0 + 0..9 + 9].
Кстати, по поводу задачи D, как доказать, что максимальное количество различных палиндромов в строке длины n равно n? А то я просто посмотрел первые 6 значений и заслал наобум..
При добавлении символа в конец строки, добавляется не более одного нового палиндрома: пусть длина наидлиннейшего палиндрома, который является суффиксом строки S, равна X, тогда все палиндромы-суффиксы меньшей длины уже встречались в строке S без последнего символа в позиции |**S**| — X