SMART,AMAZING

2374 向左看齐

Time Limit : 2000/1000 MS(Java/Others) | Memory Limit : 131072/65536 KB(Java/Others)

Submits : 0 | Solved : 0

Description

 烈日的照耀下,一群穿着军训服的学生在操场上从高到低站成一排,然后在教官短促有力的命令下“刷”的向右看齐(最右边的即是身高最高的同学)……
    这个场景,参加过军训的同学一定不会陌生,但贝吉塔星球上的人却觉得这与他们星球的习惯很不同。因为在他们列队的时候,教官都会叫他们向左看齐(最左边的即是身高最矮的同学)。为什么有这样的习惯呢,原来这个星球上的人都患有一种很奇怪的心理疾病,如果在列队时看到身高比自己高的人,就会很愤怒。具体来说,对任意一个人,能看到左边所有比他高的人(不存在有高个子把他看后面的人挡住的问题),同时每看到一个比他高的人,他的愤怒值就会加一,如果他的愤怒值突破了个人能忍受的极限,就会发生非常可怕的事情,这是必须要提防的。更奇特的一点是,如果一个人在队列中,他就能感受到队列内所有人的愤怒,也就是说如果队列里所有人的愤怒值总和大于他个人所能承受的愤怒值极限,那么不幸的事情就会发生。
   现在,贝吉塔星球时间,凌晨四点整,让人身心最疲惫的时候。你是一名小军官,这时你的长官突然决定来检阅你的部队。然而你的部队却在昨晚的狂欢舞会上喝的酩酊大醉,现在能起床就已经很不错了,不可能有整齐的列队。为了阻止你的士兵在一声“向左看齐”的命令下发生世界上最不幸的事情,你必须尽快计算出他们总的愤怒值,是否有超过某个人的愤怒值上限。如果没有超过任何一个人的愤怒值上限,输出"I'm a lucky dog"(双引号不输出);如果超过某个人的愤怒值上限,你就只能违背长官的命令了,虽然你会付出代价,但是你避免了不幸的事情发生,请输出你阻止了多少个人发生不幸的事情。

Input

输入由多组case组成。
每一组case首先输入一个N(1<=N<=10000),然后输入N行,每行两个整数H和C(1<=H,C<=2^30),Hi(1<=i<=N)表示第i个人的身高,Ci表示第i个人的忍耐极限。规定第1个人是站在最左边的人,然后依次向右,即第N个人是站在最右边的。

Output

每一组case输出一行。
如果没有发生不幸的事,输出"I'm a lucky dog"(双引号不输出)。
如果发生了不幸的事,输出你挽救的人的个数。

Sample Input

5

6 10
2 6
3 2
6 4
2 1

5
1 1
2 2
3 3
4 4
5 5

5
3 2
5 1
1 3
6 5
7 2

Sample Output

3
I'm a lucky dog
1

HINT


Source

宁大第三届院赛落选题

[ Top ] | [ Submit ]