Решение задачи Разделение конфет с Codeforces
Без пояснения   Просмотров: 60
У Деда Мороза есть n конфет и он хочет подарить их k детям. Он хочет разделить как можно больше конфет среди всех k детей. Санта не может разделять одну конфету на части, но он может не использовать некоторые конфеты вообще.
Пусть ребенок, который получил минимальное количество конфет, получил ровно a конфет, а ребенок, который получил максимальное количество конфет, получил b конфет. Тогда Дед Мороз будет доволен, если оба следующих условия выполняются одновременно:
b−a≤1 (это значит, что b=a или b=a+1);
количество детей, кто имеет a+1 конфету (заметьте, что a+1 не обязательно равно b) не превосходит ⌊k2⌋ (меньше либо равно ⌊k2⌋).
Запись ⌊k2⌋ означает k делённое на 2 и округлённое вниз до ближайшего целого числа. Например, если k=5, то ⌊k2⌋=⌊52⌋=2.
Ваша задача — найти максимальное количество конфет, которые Дед Мороз сможет дать детям таким образом, чтобы он был доволен.
Вам необходимо ответить на t независимых наборов входных данных.
Пусть ребенок, который получил минимальное количество конфет, получил ровно a конфет, а ребенок, который получил максимальное количество конфет, получил b конфет. Тогда Дед Мороз будет доволен, если оба следующих условия выполняются одновременно:
b−a≤1 (это значит, что b=a или b=a+1);
количество детей, кто имеет a+1 конфету (заметьте, что a+1 не обязательно равно b) не превосходит ⌊k2⌋ (меньше либо равно ⌊k2⌋).
Запись ⌊k2⌋ означает k делённое на 2 и округлённое вниз до ближайшего целого числа. Например, если k=5, то ⌊k2⌋=⌊52⌋=2.
Ваша задача — найти максимальное количество конфет, которые Дед Мороз сможет дать детям таким образом, чтобы он был доволен.
Вам необходимо ответить на t независимых наборов входных данных.