M的,这题肯定是英语专业的出的,神马意思啊!!!!
题目全是扯淡。。。问题就是最后一句: print the number of calls that are active during at least one second of the interval.
输出活跃超过一秒的人的个数,意思就是某人的通话时间段在监听时间内大于1秒就算一个,找出所以即可,
所以有用信息就是后面的什么时候开始打电话的,打了多少分钟;
在给出一个监听段后,你只需遍历所以电话,把在监听时间段内的电话个数输出即可!!!!
#include<stdio.h>
int main ()
{
int n,m,i,k,x,y,res,a[10002],b[10003];
while(scanf("%d%d",&n,&m)!=EOF&&(n||m))
{
for(i=0;i<n;i++)
{
scanf("%*d%*d%d%d",&a[i],&b[i]); //存所以的电话段;
b[i]+=a[i];
}
for(i=0;i<m;i++)
{
res=0;
scanf("%d%d",&x,&y);// 输入监听时间段;
y+=x;
for(k=0;k<n;k++)
if(a[k]<=x&&b[k]>x||a[k]>=x&&a[k]<y)//遍历所以电话,找在监听时间内大于1秒的;
res++;
printf("%d\n",res);
}
}
return 0;
}