WA???
查看原帖
WA???
292740
kennankk楼主2021/10/23 23:13

Wrong Answer. wrong answer Too short on line 1. 本地测样例全过,但交上去就全WA了,显示如上,求大佬帮忙解释下>_<.

#include<bits/stdc++.h>
using namespace std;
struct pl
{
	int e,s;
}cp[100005],wp[100005];
int tans=0,ans=0;
int n,m1,m2;
int vis[100005];
bool cmp(pl a,pl b)
{
	return a.e<b.e;
}
int main()
{
    freopen("airport.in","r",stdin);
    freopen("airport.out","w",stdout);
	scanf("%d %d %d",&n,&m1,&m2);
	int min1=1000005,max1=-1;
	for(int i=1;i<=m1;i++)
	{
		scanf("%d %d",&cp[i].e,&cp[i].s);
		min1=min(min1,cp[i].e);
		max1=max(max1,cp[i].s);
	}
	int min2=1000005,max2=-1;
	for(int i=1;i<=m2;i++)
	{
		scanf("%d %d",&wp[i].e,&wp[i].s);
		min2=min(min2,wp[i].e);
		max2=max(max2,wp[i].s);
	}
	sort(cp,cp+1+m1,cmp);
	sort(wp,wp+1+m2,cmp);
	int tw;
	for(int i=0;i<=n;i++)
	{
		tans=0;
		tw=i;
		memset(vis,0,sizeof(vis));
		if(tw!=0)
		{
			for(int j=min1;j<=max1;j++)
			{
				for(int k=1;k<=m1;k++)
				{
					if(cp[k].s==j&&vis[k]!=1)
					{
						tw++;
					}
					if(cp[k].e==j&&tw>0)
					{
						tans++;
						tw--;
					}else if(cp[k].e==j)
					{
						vis[k]=1;
					}
				}
			}
		}
		tw=n-i;
		memset(vis,0,sizeof(vis));
		if(tw!=0)
		{
			for(int j=min2;j<=max2;j++)
			{
				for(int k=1;k<=m2;k++)
				{
					if(wp[k].s==j&&vis[k]!=1)
					{
						tw++;
					}
					if(wp[k].e==j&&tw>0)
					{
						tans++;
						tw--;
					}else if(wp[k].e==j)
					{
						vis[k]=1;
					}
				}
			}	
		}
		ans=max(ans,tans);
	}
	cout<<ans;
	return 0;
}
2021/10/23 23:13
加载中...