Мирные кони
Рассмотрим следующую задачу. Есть стандартная шахматная доска размером 8×8 клеток. Необходимо расставить на ней N коней так, чтобы они не били друг друга, при условии, что на i-ой горизонтали должно стоять ровноr_i коней, а на j-ой вертикали должно стоять ровно c_j коней, где сумма всех r_i равна сумме всех c_j и равна N. Шахматный конь - это фигура, ход которой состоит в перемещении её на две клетки в горизонтальном или вертикальном направлении, а затем ещё на одну - в перпендикулярном направлении. Считается, что под боем находятся только те клетки, в которых конь может закончить свой ход. В каждой клетке может стоять не более одного коня.
Требуется по заданным значениям r_i найти такие значения для c_j, чтобы исходная задача имела ровно одно решение.
Входные данные
В первой строке входного файла записаны восемь чисел - r_1, r_2, ..., r_8 (0 ≤ r_i ≤ 8).
Выходные данные
В выходной файл выведите через пробел искомые восемь чисел - c_1, c_2, ..., c_8 (0 ≤ c_j ≤ 8). Если невозможно подобрать требуемым образом эти числа, то выведите через пробел восемь чисел -1. Если подходящих ответов несколько, то выведите из них наименьший лексикографически (т.е. с минимально возможным значением c_1, если таких несколько, то с минимально возможным значением c_2 и т.д.).