Poj 3661 Running(DP)
来源:互联网 发布:python多线程加锁 编辑:程序博客网 时间:2024/04/30 07:09
题目地址:http://poj.org/problem?id=3661
思路:设f[i][j]表示在第i分钟,疲劳值为j时走的最远距离。则分两种情况:(1)f[i][0]:休息,f[i][0]=f[i-1][0],直接由上一分钟转移;f[i-j][j]疲劳值为j时休息(i>=j),直到疲劳值为0。则f[i][0]=max{f[i][0],f[i-j][j]}。(2)f[i][j]:第i分钟走疲劳值加一,f[i][j]=f[i-1][j-1]+d[i],且f[i][j]仅能由此转移。则答案为f[n][0]。
#include<set>#include<map>#include<stack>#include<cstdio>#include<queue>#include<cstring>#include<iostream>#include<algorithm>using namespace std;int n,m;int f[10000+50][500+50];int main(){ scanf("%d%d",&n,&m); for(int i=1; i<=n; i++) { int d; f[i][0]=f[i-1][0]; scanf("%d",&d); for(int j=1; j<=m; j++) { if(i>=j) { f[i][0]=max(f[i][0],f[i-j][j]); f[i][j]=f[i-1][j-1]+d; } } } printf("%d\n",f[n][0]); return 0;}
0 0
- POJ 3661-Running(DP)
- poj 3661 Running(dp)
- Poj 3661 Running(DP)
- POJ 3661 Running (DP)
- poj 3661 Running DP
- poj 3661 Running (dp)
- poj 3661 Running dp
- [dp] poj 3661 Running
- poj 3661 dp(Running)
- POJ 3661 Running(dp)
- POJ-3661 Running(dp)
- POJ 3661 Running(区间dp)
- poj 3661 Running(区间dp)
- POJ 3661 Running(区间DP)
- POJ 3661 Running(朴素DP)
- POJ 3661 Running(区间DP)
- POJ-3661 Running (线性状态dp)
- poj 3661 Running (区间DP)
- VoLTE的前世今生...说清楚VoIP、VoLTE、CSFB、VoWiFi、SIP、IMS那些事...
- 从NV中读取之前保存的网络信息
- ScrollView中嵌套ViewPager,ViewPager中使用FlowLayout
- 1118. Birds in Forest (25)
- 初来乍到,请多关照
- Poj 3661 Running(DP)
- Linux服务器性能检测常用工具
- 每日170227-29
- 前端之路——张根根篇
- Android下拉/上拉刷新ListView之Android-PullToRefresh
- 数据结构实验之栈六:下一较大值(二)
- c# Blob Mysql
- Linux下IPC主题一————消息队列
- tomcat部署war包不成功解决方法