Добрый день!
Сегодня в 19:30 МСК в Тренировках состоится Новогодний контест. Приглашаю всех поучаствовать.
С наступающим!
№ | Пользователь | Рейтинг |
---|---|---|
1 | ecnerwala | 3649 |
2 | Benq | 3581 |
3 | jiangly | 3578 |
4 | orzdevinwang | 3570 |
5 | Geothermal | 3569 |
5 | cnnfls_csy | 3569 |
7 | tourist | 3565 |
8 | maroonrk | 3531 |
9 | Radewoosh | 3521 |
10 | Um_nik | 3482 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | maomao90 | 174 |
2 | awoo | 165 |
3 | adamant | 161 |
4 | TheScrasse | 160 |
5 | nor | 158 |
6 | maroonrk | 156 |
7 | -is-this-fft- | 152 |
8 | orz | 146 |
8 | SecondThread | 146 |
10 | pajenegod | 145 |
Добрый день!
Сегодня в 19:30 МСК в Тренировках состоится Новогодний контест. Приглашаю всех поучаствовать.
С наступающим!
Название |
---|
Как решалась В?
Я решал динамикой d[сколько прошли указов][предпоследний взятый указ][последний взятый указ]. Переход за O(1) — берем указ / не берем.
Ой, пропустил в условии строчку про то, что порядок указов должен остаться таким же :(
Тогда понятно как решать, спасибо.
Интересно, а за сколько можно решать аналогичную задачу, если расставлять указы можно в любом порядке?
А разве не прокатит отсортировать и пустить ту же динамику?
Теперь же мы можем добавлять точки с двух сторон (и динамика получится четвертой степени). Или я не правильно понял идею?
Резонный вопрос: как решать H?
Предположим, что число в инпуте длиной n равно сумме двух зеркальных чисел длиной тоже n. Тогда мы знаем сумму первой и последней цифры ответа — она равна последней цифре числа из инпута (так как мы знаем, что переноса разряда не было). Отнимем эту сумму в двух местах — в начале и в конце, а на место первой и последней цифры в ответе поставим любые две, которые дают такую сумму. По сути, мы перешли к задаче меньшего на 2 размера.
Аналогично предположим, что число из инпута — сумма чисел длины n-1. Тогда мы знаем сумму первой и последней цифры с учётом, что перенос разряда был. И так далее, и тому подобное.
Невозможность проверяется, к примеру, выходом суммы на каком-то шаге за границы [0 + 0..9 + 9].
Кстати, по поводу задачи D, как доказать, что максимальное количество различных палиндромов в строке длины n равно n? А то я просто посмотрел первые 6 значений и заслал наобум..
При добавлении символа в конец строки, добавляется не более одного нового палиндрома: пусть длина наидлиннейшего палиндрома, который является суффиксом строки S, равна X, тогда все палиндромы-суффиксы меньшей длины уже встречались в строке S без последнего символа в позиции |**S**| — X