原题题目
代码实现(首刷自解 n^3时间复杂度高了 可优化但人懒)
int minFallingPathSum(int** arr, int arrSize, int* arrColSize){
int dp[201][201],i,j,k,max = INT_MAX;memcpy(dp[0],arr[0],sizeof(int) * arrSize);for(i=1;i<arrSize;i++){
for(j=0;j<arrColSize[0];j++){
dp[i][j] = INT_MAX;for(k=0;k<arrColSize[0];k++){
if(!j && k>=j+1 || j == arrSize-1 && k<=j-1|| k != j) dp[i][j] = fmin(dp[i][j],dp[i-1][k]);}dp[i][j] += arr[i][j]; if(i == arrSize-1) max = fmin(dp[i][j],max);}}return max;
}