http://mirror.codeforces.com/contest/526/problem/C -задача http://mirror.codeforces.com/blog/entry/17281 -разбор Почему в разборе все так мне не очевидно
№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 3993 |
2 | jiangly | 3743 |
3 | orzdevinwang | 3707 |
4 | Radewoosh | 3627 |
5 | jqdai0815 | 3620 |
6 | Benq | 3564 |
7 | Kevin114514 | 3443 |
8 | ksun48 | 3434 |
9 | Rewinding | 3397 |
10 | Um_nik | 3396 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 156 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
10 | nor | 152 |
http://mirror.codeforces.com/contest/526/problem/C -задача http://mirror.codeforces.com/blog/entry/17281 -разбор Почему в разборе все так мне не очевидно
Название |
---|
Пусть веса конфет маленькие. Обозначим их a и b. Пусть первые конфеты выгоднее брать в удельном весе. Тогда, если у нас вторых конфет a штук — то можем заменить их на b первых, что выгоднее. Отсюда получаем, что существует оптимальное решение, в котором вторых конфет не больше a штук, значит можно перебрать их число. Ну, а если веса конфет большие — тогда можно просто перебрать допустимое число.
Разбор тоже нифига не понял, вот как я решал. Зашло, увы, уже только после окончания контеста :((
Сначала пробуем забить все конфетами одного типа, потом будем уменьшать количество конфет на 1 и пытаться добавить конфеты другого типа. Все это делаем в цикле до большого числа, но чтобы не было ТЛ: 1000000, например.
Потом делаем то же самое, только поменяв конфеты местами и забив изначально все конфетами второго типа.
Среди всех итераций ищем максимум, который будет ответом.
Если проходить только по одному типу конфет, такое решение не заходит и ложится на 54 тесте.