CodeForces864E【DP+路径输出】
来源:互联网 发布:linux双系统引导修复 编辑:程序博客网 时间:2024/05/19 02:31
知道题意以后就是一个简单的:
0/1背包+路径输出???
MMP???写C的时间不如写E
//#pragma comment(linker, "/STACK:102400000,102400000")#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>#include <time.h>using namespace std;typedef long long LL;struct asd{ int t, d, p, id;}node[110];bool cmp(asd x, asd y){ return x.d < y.d;}int n;int prex[110][2100], prey[110][2100];pair<int,int>dp[2100];vector<int>ans;int main(){ scanf("%d", &n); for(int i=1;i<=n;i++){ scanf("%d%d%d",&node[i].t, &node[i].d, &node[i].p); node[i].id = i; } sort(node+1, node+n+1, cmp); for(int i=0;i<=2000;i++){ dp[i].first = 0; dp[i].second = -1; } memset(prex, -1, sizeof(prex)); for(int i=1;i<=n;i++){ for(int j=node[i].d-node[i].t-1;j >= 0;j--){ if(dp[j+node[i].t].first < dp[j].first + node[i].p) { prex[node[i].id][j+node[i].t] = dp[j].second; prey[node[i].id][j+node[i].t] = j; dp[j+node[i].t].first = dp[j].first + node[i].p; dp[j+node[i].t].second = node[i].id; } } } int Max = 0, pos; for(int i=0;i<=2000;i++) if(dp[i].first > Max){ Max = dp[i].first; pos = i; } printf("%d\n", Max); int x, y, xx, yy; x = dp[pos].second; y = pos; while(x != -1){ ans.push_back(x); xx = x;yy = y; x = prex[xx][yy]; y = prey[xx][yy]; } printf("%d\n", (int)ans.size()); for(int i=(int)ans.size()-1;i>=0;i--) printf("%d ", ans[i]); return 0;}
阅读全文
0 0
- CodeForces864E【DP+路径输出】
- poj1015(dp输出路径)
- uva 11578 - Situp Benches(dp+输出路径)
- poj 2250 Compromise dp lcs 路径输出
- 【DP】UVA 103 Stacking Boxes 输出路径
- poj1141Brackets Sequence 区间dp+输出路径
- poj 2353(简单dp+输出路径)
- #DP基础题#嵌套矩形(输出路径)
- UVA116----简单的DP,但是输出路径比较坑
- HDU 4865 Peter's Hobby(输出路径的dp)
- 【状压DP+输出路径】HDU-1074 Doing Homework
- 【DP|LIS+输出路径】HDU-1160 FatMouse's Speed
- 【DP|LCS+输出路径】HDU-1503 Advanced Fruits
- HDU 1074 Doing Homework(状压DP输出路径)
- URAL 1900. Brainwashing Device(dp+输出路径)
- HDOJ 题目1619 Unidirectional TSP(DP输出路径啊)
- Codeforces 219C C. Color Stripe【dp+输出路径】
- Codeforces 119C Education Reform【dp+路径输出】
- POJ3461KMP模板
- java.lang.Exception: No tests found matching
- Java面试
- 第四周-项目二 建立单链表算法库
- 欢迎使用CSDN-markdown编辑器
- CodeForces864E【DP+路径输出】
- class的内容在jvm中的加载顺序
- Linux system 1
- 统计数字问题 算法实现 (补0递归法)
- 第三章习题
- 基于VUE评论组件的组件自闭声明周期思考
- 50.Scala中Variance变化点及其在Spark中的应用源码解析
- selenium和webdriver区别
- 学习计划