Помогите решить задачу по программированию!
Как вы помните, Джонни работает в правительственных службах одной неизвестной страны. В свободное время он разводит страусов на своей маленькой ферме.
На ферме есть NxM птиц. Джонни соорудил каждому страусу по загону, установив перегородки так, чтобы они образовывали прямоугольник N строк и M столбцов. Тем самым образуется ровно NxM квадратных загонов 1 на 1. Обратите внимание: между соседними загонами он ставил ровно 1 перегородку, а не две.
В одни прекрасный осенний день заслуженный страус Чак, находившийся в нижнем левом загоне, почувствовал острую необходимость отправиться по важным страусиным делам. Он начал пробивать себе путь на волю, ломая перегородки. Сначала он сломал правую перегородку и переместился загоном правее. Потом он сломал верхнюю перегородку и переместился вверх. Далее он прокладывал себе путь по такому принципу: ломая попеременно то правую, то верхнюю перегородку, пока, наконец, не оказался на свободе.
Джонни, увидев разгром, учиненный Чаком, сильно расстроился. Но делать нечего надо приводить все в порядок. Он отправил письмо на ближайшую лесопилку, указав, сколько у него осталось перегородок, но забыв при этом указать, сколько ему требуется.
Помогите работникам лесопилки: зная, сколько у Джонни осталось перегородок, определите, каких размеров могла быть ферма.
Вводится число Х - количество оставшихся перегородок. Вывести в первой строке число С - число возможных вариантов размеров фермы Джонни. В следующих С строках выведите через пробел два целых числа- возможные значения N и M.
Пример:
Вводим: 9.
Выводит:
2
3 1
2 2