Sasha2 писал(а):
Ну а вообще задача, наверно имеет решение только в том случае, если самый правй шарик имеет самую низкую перемещаемость, то есть стоит на своем месте. Ну а дальше по моему просто элеменарно, меняем местами два соседних туда-сюда, до тех пор, пока эта перемещаемость не обнулится. Или я, что то не так понял?
Это неверно. Например n шариков с перемещаемостью 1 для всех кроме крайней правой, а у последнего перемещаемость n-1. Задача решается почти однозначно. Вначале все шарики начиная со второго перепрыгивают через этот шарик, а потом он перепрыгывает через остальные.
Неверно и то, что задача решается обнулением чисел перемещаемости начиная с крайнего.
Например 4 шарика с перемещаемостями (2n+1,1,n,n) n>1 (первый ход самим левым шаром)или (n,n,1,2n+1)(первый ход третьим шаром).
Так как шары не должны сместится с места, то количество перепрыгиваний через данный шарик должен равняться числу перемещений этого шарика. Например, если у шарика число перемещений равна нулю, то этот шарик разрывает цепочку шариков, так как нельзя через него перепрыгивать и нельзя его сдвинуть.