Ланцюгові дроби#7536

Ланцюгові дроби

1 секунда
122,174 мегабайта
Легка

Представлення дійсного числа у вигляді (простого) ланцюгового дробу — це вираз, отриманий шляхом повторного подання як суми його цілої частини та оберненого іншого числа. Потім це інше число знову подається як сума цілої частини та оберненого іншого числа, і так далі. Іншими словами, ланцюгове дробове представлення числа виглядає так:

prb7536.gif

де a_0, a_1, a_2, \ldots — цілі числа, причому a_1, a_2, \ldots > 0. Ці числа називаються неповними частинами. Наприклад, для числа у вигляді ланцюгового дробу неповними частинами будуть a_0 = 5, a_1 = 2, a_2 = 2. Таке представлення дійсного числа має різноманітні застосування в теорії та практиці. Якщо є раціональним, то кількість неповних частин є скінченною.

Дано два раціональні числа у вигляді ланцюгових дробів. Вам потрібно виконати чотири арифметичні операції над ними та вивести результати цих операцій у вигляді ланцюгових дробів.

Вхідні дані

Складаються з трьох рядків. Перший рядок містить два цілі числа n_1 і n_2, де 1 \leq n_i \leq 9 — кількість неповних частин раціонального числа r_i для 1 \leq i \leq 2. Другий рядок містить неповні частини для r_1, а третій рядок містить неповні частини для r_2. Значення частин за модулем не перевищують , і вважається, що r_1 > r_2 > 0.

Вихідні дані

Виведіть неповні частини для ланцюгових дробів, що представляють r_1 + r_2, r_1 - r_2, r_1 \cdot r_2 і r_1 / r_2, у такому порядку, кожне представлення в окремому рядку. Послідовні неповні частини в кожному рядку розділяються одним пробілом. Не виводьте кінцеві нульові неповні частини.

Приклади

Приклад 1

Loading
Loading