c++ 给定一个数组,数组中相邻两个数可以同时减1,要使数组所有的数相等,最少要多少步?

给定一个数组,数组中相邻两个数可以同时减1,要使数组所有的数相等,最少要多少步?

最好能给一下代码

给思路也行

谢谢了

如果不允许相邻元素同时+1,则该题可能无解,譬如1,0,1这样的数列。