博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在一个矩阵内求一个最长上升子序列
阅读量:7259 次
发布时间:2019-06-29

本文共 690 字,大约阅读时间需要 2 分钟。

给你一个 n *m 的矩阵,求这个矩阵内部的最长上升子序列

记忆化去dp即可

在深搜的过程中去记忆化dp

int dp[2005][2005];int dfs(int x, int y){    if (dp[x][y]) return dp[x][y];    int maxth = 1;    for(int i = 0; i < 4; i++){        int fx = x+dir[i][0];        int fy = y+dir[i][1];        if (fx < 1 || fx > n || fy < 1 || fy > m || mp[fx][fy] <= mp[x][y]) continue;        int len = dfs(fx, fy)+1;        if (maxth < len) maxth = len;    }    dp[x][y] = maxth;    return maxth;}void solve() {    int ans = 0;    for(int i = 1; i <= n; i++){        for(int j = 1; j <= m; j++){            int lenth = dfs(i , j);            ans = max(ans, lenth);        }    }    printf("%d\n", ans);}

 

转载于:https://www.cnblogs.com/ccut-ry/p/9768985.html

你可能感兴趣的文章
介绍几种SSIS部署方式
查看>>
C#中的委托解析
查看>>
SqlSugar ORM已经支持读写分离
查看>>
5V系统和3.3V系统电平转换
查看>>
基于jquery的tips悬浮消息提示插件tipso
查看>>
PHPUnit笔记
查看>>
【VBA编程】14.操作工作簿对象
查看>>
Java Queue的使用
查看>>
Using Text_IO To Read Files in Oracle D2k
查看>>
关于解决Missing Number之类的算法问题
查看>>
117、Android应用程序退至后台,再次启动数据丢失的问题(转载)
查看>>
无论你如何努力,总会有人讨厌你
查看>>
Json解析工具Jackson(使用注解)
查看>>
第二十篇:在子进程中装载新的程序
查看>>
MVC日期和其它字符串格式化
查看>>
MySQL千万级多表关联SQL语句调优
查看>>
很巧妙的方法
查看>>
【Tomcat MyEcplise】MyEcplise添加一个新的Server,Tomcat8.5报错
查看>>
字符串匹配KMP算法
查看>>
Understanding The Linux Virtual Memory Manager
查看>>