eolymp
bolt
Try our new interface for solving problems
Məsələlər

Мирные кони

Мирные кони

Рассмотрим следующую задачу. Есть стандартная шахматная доска размером \textbf{8}×\textbf{8} клеток. Необходимо расставить на ней \textbf{N} коней так, чтобы они не били друг друга, при условии, что на \textbf{i}-ой горизонтали должно стоять ровно \textbf{r_i} коней, а на \textbf{j}-ой вертикали должно стоять ровно \textbf{c_j} коней, где сумма всех \textbf{r_i} равна сумме всех \textbf{c_j} и равна \textbf{N}. Шахматный конь - это фигура, ход которой состоит в перемещении её на две клетки в горизонтальном или вертикальном направлении, а затем ещё на одну - в перпендикулярном направлении. Считается, что под боем находятся только те клетки, в которых конь может закончить свой ход. В каждой клетке может стоять не более одного коня. Требуется по заданным значениям \textbf{r_i} найти такие значения для \textbf{c_j}, чтобы исходная задача имела ровно одно решение. \InputFile В первой строке входного файла записаны восемь чисел - \textbf{r_1}, \textbf{r_2}, ..., \textbf{r_8} (\textbf{0} ≤ \textbf{r_i} ≤ \textbf{8}). \OutputFile В выходной файл выведите через пробел искомые восемь чисел - \textbf{c_1}, \textbf{c_2}, ..., \textbf{c_8} (\textbf{0} ≤ \textbf{c_j} ≤ \textbf{8}). Если невозможно подобрать требуемым образом эти числа, то выведите через пробел восемь чисел \textbf{-1}. Если подходящих ответов несколько, то выведите из них наименьший лексикографически (т.е. с минимально возможным значением \textbf{c_1}, если таких несколько, то с минимально возможным значением \textbf{c_2} и т.д.).
Zaman məhdudiyyəti 3 saniyə
Yaddaşı istafadə məhdudiyyəti 256 MiB
Giriş verilənləri #1
3 3 3 3 3 3 3 3
Çıxış verilənləri #1
0 8 0 0 8 0 0 8