1664: [Usaco2006 Open]County Fair Events 参加节日庆祝

1664: [Usaco2006 Open]County Fair Events 参加节日庆祝

Time Limit: 5 Sec  Memory Limit: 64 MB

Submit: 255  Solved: 185

[Submit][Status][Discuss]

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

Silver

题解:一个考得烂了的贪心,很经典的最多不向交区间问题而已

 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.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏HansBug's Lab

1724: [Usaco2006 Nov]Fence Repair 切割木板

1724: [Usaco2006 Nov]Fence Repair 切割木板 Time Limit: 5 Sec  Memory Limit: 64 MB Su...

2857
来自专栏HansBug's Lab

3314: [Usaco2013 Nov]Crowded Cows

3314: [Usaco2013 Nov]Crowded Cows Time Limit: 1 Sec  Memory Limit: 128 MB Submit...

2615
来自专栏HansBug's Lab

1635: [Usaco2007 Jan]Tallest Cow 最高的牛

1635: [Usaco2007 Jan]Tallest Cow 最高的牛 Time Limit: 5 Sec  Memory Limit: 64 MB Sub...

3235
来自专栏HansBug's Lab

3433: [Usaco2014 Jan]Recording the Moolympics

3433: [Usaco2014 Jan]Recording the Moolympics Time Limit: 10 Sec  Memory Limit:...

2744
来自专栏HansBug's Lab

3301: [USACO2011 Feb] Cow Line

3301: [USACO2011 Feb] Cow Line Time Limit: 10 Sec  Memory Limit: 128 MB Submit: ...

30810
来自专栏HansBug's Lab

3892: [Usaco2014 Dec]Marathon

3892: [Usaco2014 Dec]Marathon Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 1...

3466
来自专栏HansBug's Lab

1601: [Usaco2008 Oct]灌水

1601: [Usaco2008 Oct]灌水 Time Limit: 5 Sec  Memory Limit: 162 MB Submit: 1342  S...

2997
来自专栏HansBug's Lab

1634: [Usaco2007 Jan]Protecting the Flowers 护花

1634: [Usaco2007 Jan]Protecting the Flowers 护花 Time Limit: 5 Sec  Memory Limit:...

3248
来自专栏HansBug's Lab

1688: [Usaco2005 Open]Disease Manangement 疾病管理

1688: [Usaco2005 Open]Disease Manangement 疾病管理 Time Limit: 5 Sec  Memory Limit: ...

2845
来自专栏HansBug's Lab

1657: [Usaco2006 Mar]Mooo 奶牛的歌声

1657: [Usaco2006 Mar]Mooo 奶牛的歌声 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: ...

2545

扫码关注云+社区

领取腾讯云代金券