1664: [Usaco2006 Open]County Fair Events 参加节日庆祝
1664: [Usaco2006 Open]County Fair Events 参加节日庆祝
Time Limit: 5 Sec Memory Limit: 64 MB
Submit: 255 Solved: 185
Description
Farmer John has returned to the County Fair so he can attend the special events (concerts, rodeos, cooking shows, etc.). He wants to attend as many of the N (1 <= N <= 10,000) special events as he possibly can. He's rented a bicycle so he can speed from one event to the next in absolutely no time at all (0 time units to go from one event to the next!). Given a list of the events that FJ might wish to attend, with their start times (1 <= T <= 100,000) and their durations (1 <= L <= 100,000), determine the maximum number of events that FJ can attend. FJ never leaves an event early.
有N个节日每个节日有个开始时间,及持续时间. 牛想尽可能多的参加节日,问最多可以参加多少. 注意牛的转移速度是极快的,不花时间.
Input
* Line 1: A single integer, N.
* Lines 2..N+1: Each line contains two space-separated integers, T and L, that describe an event that FJ might attend.
Output
* Line 1: A single integer that is the maximum number of events FJ can attend.
Sample Input
7 1 6 8 6 14 5 19 2 1 8 18 3 10 6 INPUT DETAILS: Graphic picture of the schedule: 11111111112 12345678901234567890---------这个是时间轴. -------------------- 111111 2222223333344 55555555 777777 666 这个图中1代表第一个节日从1开始,持续6个时间,直到6.
Sample Output
4 OUTPUT DETAILS: FJ can do no better than to attend events 1, 2, 3, and 4.
HINT
Source
题解:一个考得烂了的贪心,很经典的最多不向交区间问题而已
1 /**************************************************************
2 Problem: 1664
3 User: HansBug
4 Language: Pascal
5 Result: Accepted
6 Time:28 ms
7 Memory:1008 kb
8 ****************************************************************/
9
10 var
11 i,j,k,l,m,n:longint;
12 a:array[0..100005,1..2] of longint;
13 procedure swap(var x,y:longint);
14 var z:longint;
15 begin
16 z:=x;x:=y;y:=z;
17 end;
18 procedure sort(l,r:longint);
19 var i,j,x,y:longint;
20 begin
21 i:=l;j:=r;x:=a[(l+r) div 2,2];y:=a[(l+r) div 2,1];
22 repeat
23 while (a[i,2]<x) or ((a[i,2]=x) and (a[i,1]>y)) do inc(i);
24 while (a[j,2]>x) or ((a[j,2]=x) and (a[j,1]<y)) do dec(j);
25 if i<=j then
26 begin
27 swap(a[i,1],a[j,1]);
28 swap(a[i,2],a[j,2]);
29 inc(i);dec(j);
30 end;
31 until i>j;
32 if i<r then sort(i,r);
33 if l<j then sort(l,j);
34 end;
35 begin
36 readln(n);
37 for i:=1 to n do readln(a[i,1],a[i,2]);
38 for i:=1 to n do a[i,2]:=a[i,1]+a[i,2]-1;
39 sort(1,n);l:=0;
40 for i:=1 to n do if a[i,1]<>a[l,1] then
41 begin
42 inc(l);
43 a[l,1]:=a[i,1];
44 a[l,2]:=a[i,2];
45 end;
46 n:=l;l:=0;k:=0;
47 for i:=1 to n do
48 if a[i,1]>l then
49 begin
50 inc(k);
51 l:=a[i,2];
52 end;
53 writeln(k);
54 readln;
55 end.
- 多元回归模型
- C++ STL之min_element()与max_element()(取容器中的最大最小值)
- RESTful API 设计最佳实践
- python爬虫beautifulsoup4系列4-子节点
- 元胞自动机实现多数分类算法
- 51Nod 1289 大鱼吃小鱼(模拟,经典好题)
- 用Metaclass实现一个精简的ORM框架
- HDU 2504 又见GCD(最大公约数与最小公倍数变形题)
- Selenium2+python自动化63-二次封装(click/send_kesy)
- Selenium2+python自动化65-js定位几种方法总结
- HDU 2502 月之数(二进制,规律)
- Tensorflow实战系列:手把手教你使用CNN进行图像分类(附完整代码)
- HDU 2503 a/b + c/d(最大公约数与最小公倍数,板子题)
- python接口自动化6-重定向(Location)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Upload-labs通关笔记(一)
- Upload-labs通关笔记(二)
- Upload-labs通关笔记(三)
- Upload-labs通关笔记(四)
- Git使用总结
- Sqlilabs通关笔记(一)
- nodejs可读流源码分析
- Sqlilabs通关笔记(二)
- Sqlilabs通关笔记(四)
- Sqlilabs通关笔记(五)
- 如何证明sleep不释放锁,而wait释放锁?
- 如何将SAP Document Builder的word控件设置成只读模式
- 在SAP CRM WebClient UI里打开ABAP Webdynpro页面
- SAP CRM WebClient UI和ABAP Webdynpro页面的互相跳转
- 通过 Apache Ant 来运行 Tomcat