{"scoring":null,"notes":"","legend":"\\exmpwidinf=0.23\\thelinewidth\r\n\\exmpwidouf=0.63\\thelinewidth\r\n\r\nIn modern gadgets, it's crucial to trim down the fat and get rid of unnecessary features, like a headphone jack. The same trend applies to the calculator industry.\r\n\r\nIn their pursuit for minimalism, Cosio calculator company started to produce calculators that have a single display and can only compute trigonometric functions \\t{sin}, \\t{cos}, \\t{tan} and their inverses \\t{asin}, \\t{acos}, \\t{atan}.\r\n\r\nInitially, the calculator's display shows the number $0$. After that, for each of the functions listed above, you can press a button that applies that function to the displayed number. If the operation is inapplicable or produces infinity, then the calculator breaks and stops responding.\r\n\r\nYou took it as a challenge to figure out what you can achieve using this calculator. Find a way to compute~$\\frac {a}{b}$ using at most $1000$ operations.","authorLogin":"tourist","language":"english","timeLimit":2000,"output":"In the first line, print a single integer $k$~--- the number of button presses in your solution ($1 \\le k \\le 1000$).\r\n\r\nIn the second line, print the applied operations in order, separated by spaces.\r\n\r\nThe solution will be checked with a program in C++ using the standard 64-bit floating-point type: \\t{double}. Your answer will be considered correct if the sequence of actions does not cause an error, and in the end the calculator displays $\\frac {a}{b}$ with an absolute error of at most $10^{-9}$.\r\n\r\nYou do not have to find the shortest solution. Any solution satisfying the constraints will be accepted.","inputFile":"stdin","outputFile":"stdout","input":"The only line contains two integers $a$ and $b$ ($1 \\le a, b \\le 10$).","authorName":"Gennady Korotkevich","sampleTests":[{"output":"4\r\natan cos sin asin","input":"1 1\r\n","inputFile":"example.01","outputFile":"example.01.a"},{"output":"11\r\ncos atan sin atan sin atan sin atan sin acos tan\r\n","input":"2 1\r\n","inputFile":"example.02","outputFile":"example.02.a"}],"name":"Focusing on Costs","interaction":null,"memoryLimit":536870912,"tutorial":"{\r\n    \\parindent=1cm\r\n    \\begin{tabular}{l@{\\extracolsep{1cm}}l}\r\n         Идея: & Артем Васильев\\\\\r\n         Разработка: & Артем Васильев\\\\\r\n     \\end{tabular}\r\n}\r\n\r\nДокажем по индукции, что можно получить все числа вида $\\sqrt{\\frac ab}$, $b \\ge 1$. Для этого реализуем процедуру, подобную алгоритму Евклида. Базой индукции будет случай $a = b = 1$, для этого достаточно вычислить \\t{cos(0)}. Рассмотрим переходы.\r\n\r\n\\begin{itemize}\r\n\\item $a < b$. Нарисуем прямоугольный треугольник с катетами $\\sqrt{a}$ и $\\sqrt{b - a}$. Его гипотенуза равна $\\sqrt{a + (b - a)} = \\sqrt{b}$. Посмотрим на угол, противолежащий катету $\\sqrt{a}$. Тангенс этого угла равен $\\sqrt{ \\frac {a}{b-a} }$, а синус~--- $\\sqrt{ \\frac ab }$.\r\n\r\nТаким образом, чтобы от $\\sqrt{ \\frac {a}{b-a} }$ перейти к $\\sqrt{ \\frac ab }$, достаточно применить \\t{atan}, а затем \\t{sin}.\r\n\r\n\\item $a > b$. Научимся переворачивать дробь $\\sqrt{ \\frac ab }$, таким образом, сводиться к предыдущему случаю. Рассмотрим прямоугольный треугольник с катетами $\\sqrt{a}$ и $\\sqrt{b}$. Тогда тангенсы двух острых углов равны $\\sqrt{ \\frac ab }$ и $\\sqrt{ \\frac ba }$. Чтобы заменить угол $\\alpha$ на угол $\\frac {\\pi}2 - \\alpha$, можно, к примеру, вычислить \\t{acos(sin($\\alpha$))}.\r\n\r\nВ итоге, чтобы перевернуть дробь $\\sqrt{ \\frac ab }$, можно применить четыре операции: \\t{atan}, \\t{sin}, \\t{acos}, \\t{tan}.\r\n \r\n\\end{itemize}\r\n\r\nПрименяя этот алгоритм к паре $(a^2, b^2)$, мы получим искомое выражение. Его длина не превосходит $4 \\max(a, b)^2$."}