比赛 | 动态规划练习2 | 评测结果 | WWAAAAWAAA |
---|---|---|---|
题目名称 | 最长上升子序列 | 最终得分 | 70 |
用户昵称 | Hyoi_ctime | 运行时间 | 0.008 s |
代码语言 | C++ | 内存使用 | 0.30 MiB |
提交时间 | 2017-03-28 20:34:13 | ||
#include <cstdio> int a[1020]; int f[1020]; int main() { freopen("lis1.in","r",stdin); freopen("lis1.out","w",stdout); int n; int i,j; scanf("%d",&n); for(i=1;i<=n;i++) { scanf("%d",&a[i]); }f[1]=1; int max=0; for(i=2;i<=n;i++) { for(j=1;j<i;j++) { if(a[j]<a[i] && f[j]>=f[i]) { f[i]=f[j]+1; if(max<f[i]) max=f[i]; } } } printf("%d",max+1); return 0; }