dp[i]는 i열이 제거되는 데 필요한 조작 횟수를 나타내고 dp[i]=min(i, n-i, h[i], dp[i-1]+1, dp[i+1]+1), i, n-i는 가장자리 1열을 제거할 때마다 i열에 이르는 상황, h[i]는 맨 끝을 0까지 제거하는 상황, dp[i-1]+1과 dp[i+1]+1은 좌우 양측을 제거하고 다시 한 번 i열을 제거하는 상황, 앞의 3개가 읽을 때
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
초치로 설정하면 dp[i-1]+1은 왼쪽에서 오른쪽으로 한 번 뛰고, dp[i+1]+1은 오른쪽에서 왼쪽으로 한 번 뛴다.