Олимпиадный тренинг

Задача . F. Квадратное множество


Назовем множество целых положительных чисел \(a_1, a_2, \dots, a_k\) квадратным, если произведение факториалов его элементов является квадратом целого числа, т. е. \(\prod\limits_{i=1}^{k} a_i! = m^2\), для некоторого целого \(m\).

Вам задано положительное целое число \(n\).

Ваша задача — для множества \(1, 2, \dots, n\) найти квадратное подмножество максимального размера. Если оптимальных ответов несколько, выведите любой из них.

Входные данные

Единственная строка содержит одно целое число \(n\) (\(1 \le n \le 10^6\)).

Выходные данные

В первой строке выведите одно целое число — размер максимального подмножества. Во второй строке выведите само подмножество в произвольном порядке.


Примеры
Входные данныеВыходные данные
1 1
1
1
2 4
3
1 3 4
3 7
4
1 4 5 6
4 9
7
1 2 4 5 6 7 9

time 4000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
Python2
С++ Mingw-w643
Комментарий учителя