№ | Пользователь | Рейтинг |
---|---|---|
1 | jiangly | 3846 |
2 | tourist | 3799 |
3 | orzdevinwang | 3706 |
4 | jqdai0815 | 3682 |
5 | ksun48 | 3590 |
6 | Ormlis | 3533 |
7 | Benq | 3468 |
8 | Radewoosh | 3463 |
9 | ecnerwala | 3451 |
9 | Um_nik | 3451 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | cry | 165 |
2 | -is-this-fft- | 160 |
2 | Qingyu | 160 |
4 | atcoder_official | 156 |
5 | Dominater069 | 155 |
6 | adamant | 154 |
7 | djm03178 | 151 |
8 | luogu_official | 149 |
9 | awoo | 147 |
10 | Um_nik | 146 |
Название |
---|
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.