№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 4009 |
2 | jiangly | 3823 |
3 | Benq | 3738 |
4 | Radewoosh | 3633 |
5 | jqdai0815 | 3620 |
6 | orzdevinwang | 3529 |
7 | ecnerwala | 3446 |
8 | Um_nik | 3396 |
9 | ksun48 | 3390 |
10 | gamegame | 3386 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
4 | atcoder_official | 161 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 156 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
9 | nor | 153 |
Название |
---|
1658 — динамика — d[i][j] — минимальная длина числа с суммой цифр i и суммой квадратов цифр j. Переходы — ставим все возможные новые цифры и обновляем d[i+k][j+k*k].
А что если два разных числа имеют одни и те же сумму цифр, сумму квадратов цифр и длину, а вывести нужно наименьшее из них. С помощью чего это можно решить?
Когда строишь ответ, идешь с конца и перебираешь цифры по возрастанию. Если d[i-k][j-k*k] + 1 == d[i][j], то цифра k подходит
Спасибо!
(сумма цифр) <= 10^4, (сумма квадратов цифр) <= 10^4 => (количество состояний) <=10^8. Переход за 10. Сложность получается 10^9. Разве это должно успевать?
сумма цифр 9*100 <10^3
1776 Пусть dp[k] — математическое ожидание времени, нужное для запуска всех ракет в интервале длинной k. Нас интересует dp[n-2]. Переход на k делаем перебором первой запустившейся ракеты (для каждого i (1<=i<=k) отрезок будет делиться на два отрезка, длины которых (i-1) и (k-i) ).
1495: Динамика: состояние — кол-во цифр и остаток от деления на N. Переход: приписываем по одной цифре справо налево. Для каждого состояния храним, достижимо ли оно. Чтобы восстановить ответ, находим наименьшую длину, при которой достижим остаток 0, а дальше на каждом шаге при возможности берем 1, а если не можем, то 2.