C不知道为啥一直wa,感觉思路没错,求教orz

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int f[2][10005];//存不能通话的区间
int n,h,m,q,a,b,c,d;
int main()
{
	scanf("%d%d%d%d",&n,&h,&m,&q);
	for(int i=0;i<h;i++)//初始化
	{
		f[0][i]=m;
		f[1][i]=-1;
	}
	for(int i=1;i<=n;i++)
	{
		scanf("%d%d%d%d",&a,&b,&c,&d);
		if(a==c)
		{
            f[0][a]=min(b,f[0][a]);
            f[1][a]=max(d,f[1][a]);
		}
		else{
			f[0][a]=min(b,f[0][a]);
			f[1][a]=m-1;
			for(int j=a+1;j<=c-1;j++)
			{
				f[0][j]=0;
				f[1][j]=m-1;
			}
			f[0][c]=0;
			f[1][c]=max(d,f[1][c]);
		}
	}
	while(q--)
	{
		int x,y;
		scanf("%d%d",&x,&y);
		if(y>=f[0][x]&&y<=f[1][x])
		{
			printf("No\n");
		}
		else printf("Yes\n");
	}
	  
}
 

全部评论
哦,懂了,可能会出现某一小时前一段和后一段时间不能通话而中间可以通话
点赞 回复 分享
发布于 2022-08-13 11:20

相关推荐

昨天 15:12
门头沟学院 运营
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务