Время раскладывать камни
На столе в ряд расположено N ящиков, каждый из которых либо пуст, либо содержит несколько камней. За один ход можно сделать одно из следующих действий:
- взять один камень из крайнего ящика и переложить в соседний,
- взять два камня из «некрайнего» ящика и положить их по одному в соседние с ним ящики.
Требуется определить, можно ли достичь таким образом определенного расположения камней в ящиках, и, если можно, вычислить минимальное количество ходов, которое для этого требуется.
Технические условия
Входные данные
В первой строке одно натуральное число N – количество ящиков, 2 ≤ N ≤ 20.
Во второй строке N целых неотрицательных чисел ai через пробел, где ai – исходное количество камней в i-ом ящике, 0 ≤ ai ≤ 100. Сумма всех ai не больше 100.
В третьей строке N целых неотрицательных чисел bi через пробел, где bi – желаемое количество камней в i-ом ящике, 0 ≤ bi ≤ 100.
Выходные данные
Если желаемого распределения камней достичь нельзя, в первой строке вывести No solution. Иначе, в первой строке вывести одно целое число – минимальное количество ходов, за которое можно достичь желаемого распределения.
Информация о задаче
Лимит времени: 1 секундаЛимит памяти: 64 MB
Баллы за пройденный тест: 4
Сложность: 67% 1/3
Пример
Пример входных данных3 1 2 3 3 2 1 |
Пример выходных данных6 |
| ← Прогресс в артиллерии продолжается | Список задач | Медианные последовательности → |
