eolymp
bolt
Try our new interface for solving problems
Məsələlər

Испорченный треугольник

Испорченный треугольник

Рассмотрим треугольник бесконечного размера. Разделим его на меньшие треугольники и пронумеруем, как показано на рисунке. Два маленьких треугольника являются смежными, если они имеют общую границу (а не только общую точку). Так как каждый треугольник имеет три стороны, то он находится рядом с не более чем тремя другими треугольниками. Треугольники, которые примыкают к двум или только одному треугольнику, находятся на границе бесконечного треугольника. \includegraphics{https://static.e-olymp.com/content/99/997a4fd145b9b6a7cf2956d59d91ccdfb25cd08b.jpg} По номеру треугольника легко визуально определить число смежных с ним треугольников. Например, к треугольнику номер \textbf{13} примыкают треугольники с номерами \textbf{7}, \textbf{12} и \textbf{14}. Если выбрать граничный треугольник, например с номером \textbf{25}, то легко определить его соседей - это \textbf{24} и \textbf{35}. Напишите программу, которая выполнит описанную функцию. \InputFile Первая строка содержит количество тестов \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{100}), каждый из которых расположен на одной строке. Каждый тест состоит из одного целого числа - номера треугольника, принимающего значение от \textbf{1} до \textbf{1000000 }включительно. \OutputFile Вывести \textbf{n} строк (по одной строке для каждого теста). Ответом на каждый тест являются номера треугольников, смежных с заданным. Список чисел следует выводить в возрастающем порядке. Между каждой парой номеров треугольников следует выводить один пробел. Формат выходных данных приведен в примере.
Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 64 MiB
Giriş verilənləri #1
3
13
25
1
Çıxış verilənləri #1
7 12 14
24 35
3
Mənbə TCEA State Programming Contest April, 2008