题意:给你一个二维数组,求最长的递减路线的长度,只能向四个方向延伸。
解法1、dp【i】【j】以i、j结尾的最长路线长度。边界:每个数初值为1,
转移:从四周向i、j转移,if(a[i][j]>a[x][y]) dp[i][j] = max(dp[i][j] , dp[x][y]+1);
注意:这里需要按从小到大排序对点进行转移。否则答案有误。
//#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
解法二:记忆化搜索;
//#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include ;
#include