K-nim
Кодекс потрібно поважати!
І. Ільф, Є. Петров
Остап любить грати з приятелями у нім. Але його завжди б'ють за те, що він непомітно забирає камінці відразу з декількох купок. Йому надоїло ходити побитим і він придумав власну гру, у якій можна одночасно брати камінці з одніє, двох,... K купок. Використаних купок може бути довільна кількість від 1 до K і з кожної можна брати довільну (можливо, різну) кількість камінців.
"Ось тепер приятелі не будуть називати мене шулером, коли я з новою грою прийду "к ним"! "К ним"... Точно! А Назву но я цю гру K-nim" - подумав Остап, – "Але я зовсім не вмію грати за правилами! Написати б програму, яка підказує оптимальний хід... Але програмувати я також не вмію... Прийдеться пообіцяти віт мертвого віслюка вуха половину майбутнього виграша тому, хто напише її для мене".
Вхідні дані
Перший рядок входу містить два натуральних числа – N та K (N, K ≤ 10^5) – кількість наявних купок та максимальну кількість купок, з яких можна забирати камінці за хід. Другий рядок містить N натуральних чисел до 10^9 – розміри купок.
Вихідні дані
Якщо у Остапа є виграшний хід, виведіть у першому рядку, з скількох купок він повинен забирати камінці. У другому рядку виведіть стани усіх купок після ходу Остапа у тому порядку, у якому вони вводились, відокремлюючи числа пропуском. Якщо Остап виграти не може, виведіть єдине число 0.