class Solution {
public int[] pourWater(int[] heights, int volume, int k) {
for (int i = 0; i < volume; i++) {
int cur = k;
while (cur > 0 && heights[cur] >= heights[cur - 1]) {
cur --;
}
while (cur < heights.length - 1 && heights[cur] >= heights[cur + 1]) {
cur ++;
}
while (cur > k && heights[cur] == heights[cur - 1]) {
cur --;
}
heights[cur] ++;
}
return heights;
}
}