哈理工OJ 1315 火影忍者之~大战之后(贪心算法)
来源:互联网 发布:java if else嵌套 编辑:程序博客网 时间:2024/05/01 14:11
题目链接:http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1315
火影忍者之~大战之后
Time Limit: 1000 MS Memory Limit: 32767 K
Total Submit: 325(137 users) Total Accepted: 186(135 users) Rating: Special Judge: No
Description
经历了大战的木叶村现在急需重建,人手又少,所以需要尽可能多的接受外来的任务,以赚取报酬,重建村庄,假设你现在是木叶的一名高级忍者,有一大堆的任务等着你来做,但毕竟个人时间有限,所以没办法将所有的任务都做了,而只能尽可能的多。
nput
每组数据包括一个整数n,表示分配给你的任务总数,然后n行,每行两个整数,分别表示任务开始以及结束时间,输入到0结束。n不超过100,每个时间值不超过1000
Output
对每组数据,输出能够执行的最多任务数。
Sample Input
12
1 3
3 4
0 7
3 8
15 19
15 20
10 15
8 18
6 12
5 10
4 14
2 9
0
Sample Output
5
Source
2012 Spring Contest 3 - STL
Author
拂晓
【分析】首先结束的时间越早越好,所以先按结束时间从小到大排序,结束时间相同的话按开始时间从小到大排序。
下面是AC代码:
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;struct node{ int st,en;}a[105];bool cmp(node x,node y){ if(x.en==y.en) { return x.st<y.st; } else { return x.en<y.en; }}int main(){ int n; while(~scanf("%d",&n)) { if(n==0) { break; } for(int i=0;i<n;i++) { scanf("%d%d",&a[i].st,&a[i].en); } sort(a,a+n,cmp); int sum=0; int ans=a[0].en; sum++; for(int i=1;i<n;i++) { if(a[i].st>=ans) { ans=a[i].en; sum++; } } printf("%d\n",sum); } return 0;}
0 0
- 哈理工OJ 1315 火影忍者之~大战之后(贪心算法)
- HRBUST-1315 火影忍者之~大战之后
- HRBUST1315-火影忍者之~大战之后
- HRBUST1315 火影忍者之~大战之后
- 哈理工OJ 1192 追逐(贪心算法)
- 哈理工OJ 1674 充电(贪心算法)
- 哈理工1311 并查集+map火影忍者之~忍者村
- 哈理工OJ 2261 近代化改修(排序+贪心)
- hrbust 哈理工oj 1588 神医【贪心】
- hrbust哈理工oj 1674 充电【贪心】
- 哈理工oj 2080链表 【贪心】
- 哈理工oj 1674充电【贪心】
- 哈理工oj 1348 最短路径 (floyd算法)
- hrbust 哈理工oj 1570 田忌赛马【贪心】
- 哈理工oj 1079 I can do it【贪心】
- hrbust 1935 哈理工oj 1935 PROBLEM-FIVE【贪心】
- hrbust 2080 哈理工oj 2080 链条【简单贪心】
- 【南阳理工oj】喷水装置(一)(贪心)
- wr703n刷openwrt智能控制--控制mysql、串口通信等
- C#控制台基础 处理一个存进文件路径的字符串获得文件所在的文件夹的路径
- 继承
- python中获取python版本号的方法
- k-th number(主席树 )
- 哈理工OJ 1315 火影忍者之~大战之后(贪心算法)
- linux awk命令详解
- mysql错误Warning: a long semaphore wait
- 二分查找
- 命令行解决linux打开windows txt乱码问题
- 存储过程实现基本的增删查改
- 华为 3
- 2. Add Two Numbers M
- 存储过程实现基本的增删查改(二)