NEUOJ 1211 MJF wants to work (与区间相关的贪心)
来源:互联网 发布:英雄联盟知乎 编辑:程序博客网 时间:2024/06/05 09:52
题目链接
2017ICPCECIC H题
题目大意
分析
代码
#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>const int INF=0x3F3F3F3F;const int MAXN=200005;using namespace std;struct Dot{ int x,flag,time,money;}a[MAXN*2];bool cmp(struct Dot a,struct Dot b){ return (a.x<b.x||((a.x==b.x)&&(!a.flag)&&(b.flag)));}int main(){ int dp[MAXN],n,m,i,l,r,c,ans; while (scanf("%d%d",&n,&m)!=EOF) { ans=INF; for (i=1;i<=n;i++) { scanf("%d%d%d",&l,&r,&c); a[2*i-1].x=l; a[2*i-1].flag=0; a[2*i-1].time=r-l+1; a[2*i-1].money=c; a[2*i].x=r; a[2*i].flag=1; a[2*i].time=r-l+1; a[2*i].money=c; } sort(a+1,a+2*n+1,cmp); memset(dp,INF,sizeof(dp)); for (i=1;i<=2*n;i++) { if (!a[i].flag) ans=min(ans,dp[m-a[i].money]+a[i].time); else dp[a[i].money]=min(dp[a[i].money],a[i].time); } if (ans==INF) printf("oh no!\n"); else printf("%d\n",ans); } return 0;}
阅读全文
0 0
- NEUOJ 1211 MJF wants to work (与区间相关的贪心)
- 2017 ICPCECIC 北方邀请赛 H MJF wants to work (贪心)
- 2017ICPCECIC MJF wants to work
- 2017ICPC北方邀请赛H题 MJF wants to work(贪心)
- [HDU 5893] List wants to travel (树链剖分+区间合并)
- HDU 5893 List wants to travel(树链剖分+区间合并)
- hdu 5893 List wants to travel 树链剖分求区间段数
- 区间相关贪心问题
- 区间相关贪心
- HDU 5893List wants to travel(树链剖分-区间合并-区间更新-入边)
- 51Nod1091 线段的重叠(贪心法+区间相关)
- List wants to travel
- hdu5893List wants to travel
- HDU 5893 List wants to travel (树链剖分,线段树区间合并)
- HDU 5893 List wants to travel 树链剖分求区间不同段个数
- 贪心法之区间相关问题
- 事务的commit work与rollback work
- NEUOJ: 1299: 磊磊的难题
- Java学习第十一天
- 将word中的所有mathtype公式统一设置格式
- 经典英文电影及其台词、经典英文书
- CRM的dev(零)--客户关系系统的序言
- swing平滑曲线图
- NEUOJ 1211 MJF wants to work (与区间相关的贪心)
- 关于数值统计的几个算法
- 解决linux用户丢失的问题
- [BZOJ] 3670: [Noi2014]动物园
- Dockerfile详解
- JavaScript学习(一)基础知识
- where group by联合使用
- stream 中的groupingBy 和partitioningBy
- IO流进阶1