eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Шестиугольная сеть пастбищ

Шестиугольная сеть пастбищ

Фермер Джон недавно приобрел новые земли для расширения своей фермы. Его коровы облюбовали гексагональную структуру как у пчелиных сот. Для того чтобы стаду понравились новые земли, фермер Джон создал новую систему пастбищ и троп для коров в этом формате. Участок под пастбища и тропы для коров образует шестиугольник, длина стороны которого равна \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 секунда
Лимит использования памяти 64 MiB
Входные данные #1
3 1 2
Выходные данные #1
5
3
6
8
9
10