e-olymp 2071. Три грибника

Задача

Три грибника

Три грибника

Три грибника Петя, Вася и Николай, возвращаясь из лесу домой, решили устроить привал, а заодно и перекусить. Как это у нас принято, через некоторое время каждый начал сначала хвастаться своими сегодняшними успехами, а со временем, а так все трое были друзьями, то вскоре начали делить найденными ими грибы между собой и своими товарищами.

Сначала Пётр дал Васе и Николаю по столько грибов, сколько у них уже было. Николай быстро понял, что так будет не по-братски, и дал Василию и Петру по столько грибов, по сколько у них стало. Василий не мог отстать от сотоварищей и также дал каждому из друзей по столько грибов, сколько у них этому моменту имелось. И тут друзья с удивлением обнаружили, что у всех стало грибов поровну.

Сколько грибов было у каждого перед привалом, если известно, что все вместе они собрали n грибов?

Входные данные

В единственной строке находится единственное натуральное число n (n30000).

Выходные данные

В единственной строке вывести через пробел количество грибов перед привалом у Петра, Василия и Николая, соответственно. Гарантируется, что все входные данные корректны.

Тесты

Входные данные
Выходные данные
24 13 4 7
48 26 8 14
72 39 12 21
96 52 16 28
120 65 20 35
144 78 24 42

Код программы

Решение задачи

Представим нашу задачу в форме таблицы, строки которой будут соответствовать грибникам, а столбцы — количеству грибов у соответствующего грибника между обменами:

П.
x1 x2=x1y1z1 x3=2x2 x4=2x3
В.
y1 y2=2y1 y3=2y2 y4=y3x3z3
Н.
z1 z2=2z1 z3=z2x2y2 z4=2x3

По условию задачи x4=y4=z4=n3. Тогда выражением нужных корней и подстановкой известных считаем x1y1 и z1 начиная с правого столбца и двигаясь налево:

x3=x42=n6
z3=z42=n6
y3=y4+x3+z3=n3+n6+n6=2n6
x2=x32=n12
y2=y32=n3
z2=z3+y2+x2=n6+n12+n3=7n12
y1=y22=n6
z1=z22=7n24
x1=x2+y1+z1=n12+n6+6n12=13n24

Получили ответы: x1=13n24y1=n6 и z1=7n24. Это и будет количество грибов соответственно у Пети, Васи и Николая в самом начале. Отсюда получаем итоговую формулу решения, указанную в коде программы.

Ссылки

Условие задачи на e-olymp
Код решения на ideone.com