Codeforces Round 329 (Div. 2) |
---|
Закончено |
Каждый день перед сном Руслан считал овец, но это ему не помогало. Теперь он нашёл себе занятие интереснее: он сначала загадывает какое-то множество окружностей на плоскости, а затем пытается определить какое-нибудь красивое множество точек, так чтобы внутри или на границе каждой загаданной окружности лежала хотя бы одна точка множества.
Вчера Руслан попробовал решить данную задачу, когда множество считается красивым, если оно определяется как (xt = f(t), yt = g(t)), для всех целых t от 0 до 50. При этом f(t) и g(t) должны быть корректными функциями.
Пусть w(t) и h(t) — корректный функции, а c — целое число от 0 до 50. Тогда функция s(t) является корректной, если она получена по одному из следующих правил:
Вчера Руслан промучился всю ночь, но так и не справился с задачей. Теперь он просит вас написать программу, вычисляющую подходящие f(t) и g(t) для любого набора из не более чем 50 окружностей.
В каждой из функций f(t) и g(t) должно быть использовано не более 50 операций умножения. Длина функции не должна превышать 100·n символов. В функции не должно быть пробелов.
Руслан плохо работает с большими числами, поэтому функции f(t) и g(t) должны быть выбраными такими, чтобы для всех t от 0 до 50 все промежуточные вычисления и итоговое значение по абсолютному значению не превосходили 109.
В первой строке входных данных записано число n (1 ≤ n ≤ 50) — количество окружностей, загаданных Русланом. Следующие n строк содержат по три целых числа xi, yi, ri (0 ≤ xi, yi ≤ 50, 2 ≤ ri ≤ 50) — координаты и радиус i-й окружности.
В первой строке выведите корректную функцию f(t). Во второй строке вывести корректную функцию g(t). Множество точек (xt = f(t), yt = g(t)) (0 ≤ t ≤ 50) должно удовлетворять условию, что для любой из n окружностей найдётся точка из данного мноежства лежащая внутри ли на границе.
3
0 10 4
10 0 4
20 10 4
t
abs((t-10))
Корректные функции:
Некорректные функции:
Название |
---|