2015
04-16

# Happy Telephones

In the land of Eden, all phone conversations are happy ones. People complaining on the phone are immediately put in jail. To enforce this law, the police taps all phone conversations.
The police wants to hire the approriate number of operators to listen to all conversations in a given period of time. Unfortunately, each of their operators can listen to one conversation only before needing a really long break to rest from the effort.
As a contractor of the police department, you have been asked to provide a program capable of determining the required number of operators. If the program does not work correctly, you will be put in jail as well, along with all the unhappy complainers. Do you really want to end up there?

Each test case starts with two integers denoting the number of phone calls N (1 <= N < 10 000) and the number of intervals M (1 <= M < 100). This is followed by N lines describing the telephone calls, each one consisting of four integers Source, Destination, Start and Duration. Source and Destination identify the pair of telephone numbers establishing the connection (0 <= Source, Destination <= 10 000 000). Start and Duration are the start time and duration of the call in seconds (1 <= Duration <= 10 000 and Start >= 0). You can safely assume that the sum of Start and Duration fits into a 32-bit signed integer.
Afterwards follow M lines containing the time intervals the police are interested in, each on described by two integers Start and Duration, in the same format and with the same meaning and constraints as those in the telephone calls. The last test case is represented by N = M = 0 and must not be processed.

Each test case starts with two integers denoting the number of phone calls N (1 <= N < 10 000) and the number of intervals M (1 <= M < 100). This is followed by N lines describing the telephone calls, each one consisting of four integers Source, Destination, Start and Duration. Source and Destination identify the pair of telephone numbers establishing the connection (0 <= Source, Destination <= 10 000 000). Start and Duration are the start time and duration of the call in seconds (1 <= Duration <= 10 000 and Start >= 0). You can safely assume that the sum of Start and Duration fits into a 32-bit signed integer.
Afterwards follow M lines containing the time intervals the police are interested in, each on described by two integers Start and Duration, in the same format and with the same meaning and constraints as those in the telephone calls. The last test case is represented by N = M = 0 and must not be processed.

3 2
3 4 2 5
1 2 0 10
6 5 5 8
0 6
8 2
1 2
8 9 0 10
9 1
10 1
0 0

3
2
1
0

/*

hdu 4079 简单题

（这是为了防止出现持续时间为1的情况）

By：ACY
2013-05-04
*/

#include"stdio.h"
#include"string.h"
#define N 10002
struct node
{
int x,y;
}A[N];
int main()
{
int i,j,k;
int n,m;
int s,d,x,y;
while(scanf("%d%d",&n,&m),n||m)
{
for(i=0;i<n;i++)
{
scanf("%d%d",&s,&d);
scanf("%d%d",&x,&y);
A[i].x=x;
A[i].y=x+y;
}
for(i=0;i<m;i++)
{
scanf("%d%d",&x,&y);
y=x+y;
for(k=0,j=0;j<n;j++)
{
if(A[j].y>x&&A[j].x<y)
k++;
}
printf("%d\n",k);
}
}
return 0;
}

1. 佛教的观点认为，物质世界虚幻不实，故而为“空”。这个空并非是一无所有的空。而是“缘起空”。一切事物都是“因缘而起”，没有固定的本性，因此为空。这也是很多人对佛理的误解，好像空就是什么都没有。如果我们人类身高不是目前的高度，而是10米以上，那么我们居住的房

2. int half(int *array,int len,int key)
{
int l=0,r=len;
while(l<r)
{
int m=(l+r)>>1;
if(key>array )l=m+1;
else if(key<array )r=m;
else return m;
}
return -1;
}
这种就能避免一些Bug
l,m,r
左边是l,m;右边就是m+1,r;

3. 如果两个序列的最后字符不匹配（即X [M-1]！= Y [N-1]）
L（X [0 .. M-1]，Y [0 .. N-1]）= MAX（L（X [0 .. M-2]，Y [0 .. N-1]），L（X [0 .. M-1]，Y [0 .. N-1]）
这里写错了吧。

4. 第23行：
hash = -1是否应该改成hash[s ] = -1

因为是要把从字符串s的start位到当前位在hash中重置

修改提交后能accept，但是不修改居然也能accept

5. 学算法中的数据结构学到一定程度会乐此不疲的，比如其中的2－3树，类似的红黑树，我甚至可以自己写个逻辑文件系统结构来。