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

Ним Витхоффа

Ним Витхоффа

Двое играют в игру "Ним". Есть \textbf{2} кучки из \textbf{n} и \textbf{k} конфет. Игрок в свой ход может вытянуть произвольное количество конфет из одной кучки или вытянуть одинаковое количество из обеих кучек. Выигрывает тот, кто взял последнюю конфетку. Найдите все проигрышные позиции в этой игре, в которых суммарное количество конфет \textbf{n+k} не превосходит \textbf{max_sum}. \InputFile В первой строке записано единственное число \textbf{max_sum} (\textbf{1} ≤ \textbf{max_sum} ≤ \textbf{10^6}). \OutputFile В первой строке выведите количество проигрышных позиций, затем выведите все эти позиции на отдельной строке. Позиция описывается двумя числами \textbf{n} и \textbf{k} (\textbf{n} ≤ \textbf{k}). Позиции выводите по возрастанию \textbf{n}, а при равенстве по возрастанию \textbf{k}. Если проигрышныхпозиций больше \textbf{10^6}, то выведите только первые \textbf{10^6}.
Лимит времени 2 секунды
Лимит использования памяти 64 MiB
Входные данные #1
20
Выходные данные #1
4
1 2
3 5
4 7
6 10
Источник III Международная Летняя школа программирования 2012 г. Севастополь