记忆化dfs

状态方程:st,st[i][j]:存储矩阵[i][j]开始的最长严格递减长度

int dfs(int i,int j){

    if(st[i][j]!=0) return st[i][j];

    int ma=0;

    for(int k=0;k<4;k++){

        int ni=i+dir[k][0],nj=j+dir[k][1];

        if(ni>=0 && ni<n && nj>=0 && nj<m && g[ni][nj]<g[i][j]){

            ma=max(ma,dfs(ni,nj)+1);

        }

    }

    st[i][j]=max(1,ma);

    return st[i][j];

}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 12:23
转人工😡
门口唉提是地铁杀:五次握手了
点赞 评论 收藏
分享
一表renzha:手写数字识别就是一个作业而已
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务