Ограничения: время – 2s/2s, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Ваня, Сережа и Дима любят физические нагрузки. Больше всего им нравится поднимать тяжести.
Ребята очень давно начали заниматься гиревым спортом и уже собрали набор гирь для тренировок.
Этот набор состоит из `n` гирь с различными целыми весами от 1 до `n`.
Совсем недавно ребята нашли новый спортивный зал и решили перенести туда все свои гири.
Так как им очень нравится их поднимать, то каждому хочется нести как можно больший вес.
Но ребята очень честные, и весь вес решили распределить поровну.
Помогите спортсменам разделить набор из `n` гирь с весами `1,\ 2,\ …,\ n` на три равные по весу части.
Формат ввода
Входной файл содержит единственное целое число `n` (`1\ ≤\ n\ ≤\ 100\ 000`) — количество гирь.
Формат вывода
Выведите для каждого спортсмена набор гирь, который ему нужно перенести в новый спортивный зал.
Наборы выводятся следующим образом. В первой строке выведите количество гирь в наборе.
Далее, во второй строке через пробел выведите веса гирь.
Если разбить все гири на три равных по весу множества нельзя, выведите "Impossible".
Если существует несколько решений, можно вывести любое.
Пример вывода 1
2
3 4
2
5 2
2
1 6
Пример вывода 2
Impossible
Источник: XIX Командный чемпионат школьников Санкт-Петербурга по программированию, 2011