Time to lay out the stones
На столе в ряд расположено N ящиков, каждый из которых либо пуст, либо содержит несколько камней. За один ход можно сделать одно из следующих действий:
- взять один камень из крайнего ящика и переложить в соседний,
- взять два камня из «некрайнего» ящика и положить их по одному в соседние с ним ящики.
Требуется определить, можно ли достичь таким образом определенного расположения камней в ящиках, и, если можно, вычислить минимальное количество ходов, которое для этого требуется.
Specifications
Входные данные
В первой строке одно натуральное число N – количество ящиков, 2 ≤ N ≤ 20.
Во второй строке N целых неотрицательных чисел ai через пробел, где ai – исходное количество камней в i-ом ящике, 0 ≤ ai ≤ 100. Сумма всех ai не больше 100.
В третьей строке N целых неотрицательных чисел bi через пробел, где bi – желаемое количество камней в i-ом ящике, 0 ≤ bi ≤ 100.
Выходные данные
Если желаемого распределения камней достичь нельзя, в первой строке вывести No solution. Иначе, в первой строке вывести одно целое число – минимальное количество ходов, за которое можно достичь желаемого распределения.
Problem information
Time Limit: 1 secondsMemory Limit: 64 MB
Balls for the passed test: 4
Complexity: 67% 1/3
Example
Example input3 1 2 3 3 2 1 |
Example output6 |
| ← Progress in the artillery continues | Problems | Median sequence → |
