杭电acm1087
2015-11-15 13:49
204 查看
dp问题: ans[i] = max(ans[j]) + d[i],循环条件:d[j] < d[i] && temp < ans[j]
#include <stdio.h> #include <string.h> int main() { int d[1001], ans[1001]; int n, i, j, flag, rst; while(~scanf("%d", &n) && n) { for(i=0; i<n; i++) scanf("%d", &d[i]); memset(ans, 0, sizeof(ans)); for(i=0; i<n; i++) { flag = 0; int temp = -1;//记录最大值 for(j=0; j<i; j++) if(d[i]>d[j] && temp<ans[j]) { temp = ans[j]; flag = 1; }// end if if(flag) ans[i] = temp + d[i]; else ans[i] += d[i]; }//end for rst = -1; for(i=0; i<n; i++) if(rst<ans[i]) rst = ans[i]; printf("%d\n", rst); }//end while return 0; }
相关文章推荐
- android studio安装过程中常见错误
- 动手动脑:成绩
- 编程基础知识之语言特性
- java中多条件与不定条件查询
- 《More Effective C++ 》笔记
- 前端已不止于前端-序章
- 嵌入式软件工程师经典笔试题
- Javascript异步流程控制之Promise(3)-ES6原生Promise简介
- Missing Number
- Android 向左向右滑动销毁(finish)Activity, 随着手势的滑动而滑动的效果
- 一道js面试题引发的思考
- linux权限问题总结
- 关于在 mac上配置pytesseract的相关问题
- Angular黑科技之transclude
- 复数类的完善版
- Javascript异步流程控制之Promise(2)-Angular $q源码解读
- 在Xcode中使用Git进行源码版本控制
- [1091]:A+B for Input-Output Practice (III)
- Linux线程 之 线程 线程组 进程 轻量级进程(LWP) -systemtap -mysql
- 关于request.getParameterMap()的类型转换和数据获取