noj1031建筑群最长坡值
2016-02-12 19:52
246 查看
最长递减序列,状态转移方程dp(i)=max(dp(j))+1(j<i)(其中dp(i)定义为以i为截止的最长递减序列长度,最后从头到尾扫描一遍找到最长长度
//状态转移方程dp(i)=dp(j)+1(j<i)其中dp(i)定义为以i为结尾的之前递减序列的个数最长长度 #include <stdio.h> #include <string.h> int dp[1005]; int a[1005]; int max(int a,int b) { return a>b?a:b; } int main() { int i,j,n,ans; ans=0; scanf("%d",&n); for (i=0;i<n;i++) scanf("%d",&a[i]); for (i=0;i<n;i++) dp[i]=1; for (i=0;i<n;i++) for (j=0;j<i;j++) if ((a[i]<a[j])&&(dp[i]<dp[j]+1)) dp[i]=dp[j]+1; for (i=0;i<n;i++) ans=max(ans,dp[i]); printf("%d\n",ans); return 0; }
相关文章推荐
- 好莱坞原则、依赖倒置、控制反转、依赖注入
- 操作系统 汤子瀛版 读书总结
- 解决Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart
- 《大型网站技术架构:核心原理与案例分析》读书笔记2
- jquery动画stop()方法简介
- 代码缺陷审查管理系统Apache+bugzilla+reviewboard+SVN之bugzilla安装配置
- 聊天气泡的绘制(圆角矩形+三角形+黑色边框,关键学会QPainter的draw函数就行了),注意每个QLabel都有自己的独立坐标
- unity3d 在2D空间中让一个点注视另一个点
- InvalidateRect(转)
- Android实现百度地图截图
- 输入读书外挂
- socket编程 -- socket、bind、accept、connect函数
- WMI
- Python中元组,列表,字典的区别
- html基础
- 布局文件中的笔记
- 区位码、国标码与机内码
- VMware虚拟机 打不开的各种问题
- rand函数和srand函数的用法和区别
- 如何保留两位小数