3379: [Usaco2004 Open]Turning in Homework 交作业
来源:互联网 发布:销售票据打印软件 编辑:程序博客网 时间:2024/06/05 11:28
题目链接
题目大意:Bessie要交作业,现在知道每个教师的位置,假设都位于X轴上,每份作业都有一个最早交的时间,知道公交车站位于坐标B,假设他每走一个单位耗费时间是1,求他交完作业到达公交车站那最少的时间是什么
题解:
但是答案还需要累加结束位置到车站的距离,而这个方程只能得到结束位置为1或n办公室的最优解,可是最优答案的结束位置可能在中间
因为推的顺序相反,需要初始化f[1][C][0]和f[1][C][1],注意外层i从小到大,内层j从大到小
我的收获:区间dp
#include <queue>#include <stack>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int C,H,B,F[1005][1005][2],Ans=1<<30;struct Data{int x,t;}A[1005];inline bool cmp(const Data&a,const Data&b){return a.x<b.x;}int main(){ scanf("%d%d%d",&C,&H,&B); for (int i=1;i<=C;i++) scanf("%d%d",&A[i].x,&A[i].t); sort(A+1,A+1+C,cmp); memset(F,127/2,sizeof(F)); F[1][C][0]=max(A[1].x,A[1].t); F[1][C][1]=max(A[C].x,A[C].t); for (int i=1;i<=C;i++){ for (int j=C;j>=i;j--){ F[i][j][0]=min(F[i][j][0],max(F[i-1][j][0]+A[i].x-A[i-1].x,A[i].t)); F[i][j][0]=min(F[i][j][0],max(F[i][j+1][1]+A[j+1].x-A[i].x,A[i].t)); F[i][j][1]=min(F[i][j][1],max(F[i-1][j][0]+A[j].x-A[i-1].x,A[j].t)); F[i][j][1]=min(F[i][j][1],max(F[i][j+1][1]+A[j+1].x-A[j].x,A[j].t)); } } for (int i=1;i<=C;i++) Ans=min(Ans,min(F[i][i][0],F[i][i][1])+abs(B-A[i].x)); printf("%d",Ans); return 0;}
阅读全文
0 0
- 3379: [Usaco2004 Open]Turning in Homework 交作业
- 【bzoj3379】[Usaco2004 Open]Turning in Homework 交作业
- USACO Open 2004,Turning in Homework(提交作业)
- 【USACO】2004 Open Turning in Homework 提交作业
- POJ 1991 Turning in Homework
- poj 1991 Turning in Homework dp
- POJ 1991 Turning in Homework 区间DP
- POJ 1991 Turning in Homework 区间DP
- 【BZOJ3379】【USACO2004】交作业 区间DP
- POJ1991 Turning in Homework 贪心+动态规划
- POJ 1991 Turning in Homework(由大推小的区间DP)
- [代码] 根据homework\homework.html文件,返回<学生ID,交作业顺序>的Map
- poj 1991 Turning in Homework(区间DP,大区间推出小区间的思想)好题,想法很独特
- 3378: [Usaco2004 Open]MooFest 狂欢节
- 交作业
- 交作业
- 交作业
- 交作业
- 关于thinkphp里面公用模板的调用
- 【java基础】两个变量互换不使用第三方变量的方法
- 字符串的slice(),substr(),substring()
- [poj1155] TELE 树形DP 01背包
- 并发编程复习(六):使用wait和notify模拟阻塞队列
- 3379: [Usaco2004 Open]Turning in Homework 交作业
- 关于手机功能NFC(以华为V9为例)
- hdu 1698 Just a Hook
- 网格视图GridView的使用
- POJ 3155 Hard Life(最小割 最大密度子图)
- python3配置错误 ImportError: No module named 'gi._gi'
- bzoj1671 Knights of Ni 骑士 BFS
- 几首音乐
- Matlab调用Opencv