Задача №112828. Заработная плата
В некоторой компании работают три сотрудника — Алексей, Виктор и Сергей. Их месячный оклад составляет A , B и C рублей соответственно. При этом Алексей работает на полную ставку, а Виктор и Сергей — на половину ставки, то есть работают вдвое меньше, чем Алексей.
По итогам месяца директор компании хочет распределить между этими сотрудниками премиальный фонд, который составляет N рублей. При этом директор хочет распределить премиальный фонд таким образом, чтобы итоговая зарплата (сумма оклада и премии) у этих сотрудников оказалась пропорциональна проведённому на работе времени, то есть зарплата Алексея должна оказаться ровно в два раза больше, чем зарплата Виктора и Сергея. Более формально, если премия Алексея составит x рублей, премия Виктора — y рублей, премия Сергея — z рублей, то A + x = 2 × ( B + y ) = 2 × ( C + z ) , x + y + z ≤ N . При этом бухгалтерия требует, чтобы размер премии (как и размер оклада) выражался целым числом рублей, а директор хочет распределить максимально большую часть премиального фонда, то есть сумма x + y + z должна быть максимально возможной, не превышая при этом N .
Напишите программу, которая определит, какую премию нужно назначить каждому из сотрудников.
Программа получает на вход сначала три целых числа A , B , С , записанные в отдельных строках, — размеры окладов Алексея, Виктора и Сергея ( A > 0 , B > 0 , С > 0 ). В четвёртой строке входных данных записано одно целое число N — размер премиального фонда ( N \(\ge\) 0 ).
Программа должна вывести три числа — размер премии Алексея, Виктора и Сергея. Если премиальный фонд нельзя распределить так, чтобы выполнялись требуемые условия, программа должна вывести одно число 0.
В первом тесте: с учетом премии зарплата Алексея составит 12 рублей, Виктора и Сергея — 6 рублей.
Во втором тесте: Добиться нужного соотношения премиальных выплат невозможно.
Ограничения и система оценивания
Решение, которое выводит правильный ответ только на тестах из условия и тех тестах, на которых ответом является «0», будет оцениваться в 0 баллов.
Решение, правильно работающее в случае, когда все входные числа не превосходят 100, будет оцениваться в 30 баллов.
Решение, правильно работающее в случае, когда все входные числа не превосходят 10 5 , будет оцениваться в 60 баллов.
Решение, правильно работающее в случае, когда все входные числа не превосходят 10 9 , будет оцениваться в 100 баллов.
7 3 4 12
5 3 2
20 10 11 2
0