Блог пользователя ggrikgg

Автор ggrikgg, 9 лет назад, По-русски

http://mirror.codeforces.com/contest/526/problem/C -задача http://mirror.codeforces.com/blog/entry/17281 -разбор Почему в разборе все так мне не очевидно

  • Проголосовать: нравится
  • +10
  • Проголосовать: не нравится

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Пусть веса конфет маленькие. Обозначим их a и b. Пусть первые конфеты выгоднее брать в удельном весе. Тогда, если у нас вторых конфет a штук — то можем заменить их на b первых, что выгоднее. Отсюда получаем, что существует оптимальное решение, в котором вторых конфет не больше a штук, значит можно перебрать их число. Ну, а если веса конфет большие — тогда можно просто перебрать допустимое число.

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Разбор тоже нифига не понял, вот как я решал. Зашло, увы, уже только после окончания контеста :((

Сначала пробуем забить все конфетами одного типа, потом будем уменьшать количество конфет на 1 и пытаться добавить конфеты другого типа. Все это делаем в цикле до большого числа, но чтобы не было ТЛ: 1000000, например.

Потом делаем то же самое, только поменяв конфеты местами и забив изначально все конфетами второго типа.

Среди всех итераций ищем максимум, который будет ответом.

Если проходить только по одному типу конфет, такое решение не заходит и ложится на 54 тесте.