Задачи
Шестиугольная сеть пастбищ
Шестиугольная сеть пастбищ
Фермер Джон недавно приобрел новые земли для расширения своей фермы. Его коровы облюбовали гексагональную структуру как у пчелиных сот. Для того чтобы стаду понравились новые земли, фермер Джон создал новую систему пастбищ и троп для коров в этом формате.
Участок под пастбища и тропы для коров образует шестиугольник, длина стороны которого равна \textbf{k} (\textbf{2 }≤ \textbf{k }≤ \textbf{50}). Пастбища удобно пронумерованы \textbf{1..3·k·(k-1)+1} начиная с левого нижнего края и заканчивая верхним правым, как показано на рисунке для \textbf{k = 3}:
\includegraphics{https://static.e-olymp.com/content/29/292d424f52383ebaae6872fb64db4f2cd840b482.jpg}
Каждое пастбище соединено со всеми своими ближайшими соседями. Это значит, что если пастбище находится внутри шестиугольника, то оно соседствует в точности с шестью другими пастбищами. Например, на диаграмме выше пастбище \textbf{#10} соседствует с пастбищами \textbf{#5}, \textbf{#6}, \textbf{#11}, \textbf{#15}, \textbf{#14} и \textbf{#9}. Пастбища на сторонах (но не в углах) структуры соседствуют в точности с четырьмя другими пастбищами (например пастбище \textbf{#4} соседствует с \textbf{#1}, \textbf{#5}, \textbf{#9} и \textbf{#8}). Пастбища в углах соседствуют только с тремя другими (пастбище \textbf{#1} соединено с \textbf{#2}, \textbf{#5} и \textbf{#4}). Длина коровьей тропы, соединяющей два пастбища, равна \textbf{1,} а расстояние между двумя пастбищами определяется как длина кратчайшего пути между ними.
Голштинские коровы фермера Джона жевали траву на пастбище \textbf{h} (\textbf{1} ≤ \textbf{h} ≤ \textbf{3·k·(k-1)+1}) несколько дней, после чего стали жирными и ленивыми. Чтобы заставить коров побегать, фермер Джон положил вкусные угощения на пастбищах, расположенных на расстоянии \textbf{l} (\textbf{1} ≤ \textbf{l} ≤ \textbf{2·k-2}) от них. Гарантируется, что фермер положил как минимум одно угощение. Но коровы не знают, где именно эти угощения расположены.
Помогите коровам избежать лишней беготни: выведите количество всех возможных пастбищ, на которых могут находиться угощения, а также и сам список пастбищ в возрастающем порядке.
Например, пусть \textbf{k = 3}, а коровы находятся на пастбище \textbf{#1}. Фермер сообщил, что угощение расположено на пастбищах на расстоянии \textbf{2}. Угощение может находиться на пастбищах \textbf{#3}, \textbf{#6}, \textbf{#10}, \textbf{#9} и \textbf{#8}, как указано ниже.
\includegraphics{https://static.e-olymp.com/content/03/03bc9bf9171f5faa81da0bf01af1da0ec2396c4e.jpg}
\InputFile
В одной строке заданы три целых числа \textbf{k}, \textbf{h} и \textbf{l}.
\OutputFile
В первой строке выведите количество пастбищ на расстоянии \textbf{l} от пастбища \textbf{h}. В строке \textbf{i+1} выведите номер \textbf{i}-го пастбища. Номера пастбищ следует выводить в возрастающем порядке.
Входные данные #1
3 1 2
Выходные данные #1
5 3 6 8 9 10