printРабочее место участника

printЗадачи

1960. Игра

Ограничения: время – 300ms/600ms, память – 128MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Имеется куча из `N` камней (`N` нечётное). Два игрока поочерёдно берут из кучи от одного до `K` камней. Игра заканчивается, когда куча опустеет. При этом побеждает игрок, который взял чётное число камней.
Требуется определить, кто выиграет, если оба участника играют оптимально. Если победит первый игрок (то есть делающий первый ход), то нужно также найти какой-либо вариант его хода на первом шаге, гарантированно приводящий к победе.
В единственной строке входного файла записаны нечётное целое число `N` (`1\ ≤\ N\ ≤\ 100`) и через пробел целое число `K` (`1\ ≤\ K\ ≤\ N`).
В первой строке выходного файла выведите 1 или 2 — номер игрока, который победит при правильной игре. В случае победы первого игрока во второй строке выведите одно целое число — сколько камней ему следует взять на первом ходу. В случае нескольких правильных ответов выведите любой.

Пример ввода 1

1 1

Пример вывода 1

2

Пример ввода 2

3 2

Пример вывода 2

1
2
Источник: XVI межвузовская олимпиада по программированию, Вологда, 2013
loading