求助,小样例能过但是提交时RE
查看原帖
求助,小样例能过但是提交时RE
220676
Coral_Swallow楼主2021/10/24 20:13

RT

#include <iostream>
#include <cstring>
#include <cstdio>
#include <cmath>
using namespace std;

const int N=1e5;
int n,mo,ms;
int var[N];
int qd[N],zd[N];
int aday[500][2];	//1go;0in
int max_time=-1;
int sylq[2],totlq[2];	//0-gn, 1-gj
int sumpl=0;
int ans=-1;
int isIn[N];

int main(){
//	freopen("airport.in","r",stdin);
//  freopen("airport.out","w",stdout);
	cin>>n>>mo>>ms;
	for(int i=1;i<=mo;i++){
		var[i]=0;
		cin>>qd[i]>>zd[i];
		max_time=max(max_time,zd[i]);
		aday[qd[i]][0]=i;
		aday[zd[i]][1]=i;
		
	}
	for(int i=1;i<=ms;i++){
		
		var[i+mo]=1;
		cin>>qd[i+mo]>>zd[i+mo];
		max_time=max(max_time,zd[i]);
		aday[qd[i+mo]][0]=i+mo;
		aday[zd[i+mo]][1]=i+mo;
	}
	for(int i=0;i<=n;i++){
		totlq[0]=i;
		totlq[1]=n-i;
		sumpl=0;
		for(int i=1;i<=max_time;i++){
			ans=max(ans,sumpl);
			int cur_pla_in=aday[i][0];
			if(cur_pla_in!=0){
				int cur_pla_var=var[cur_pla_in];
				if(sylq[cur_pla_var]<totlq[cur_pla_var]){
					isIn[cur_pla_in]=1;
					sylq[cur_pla_var]++;
					sumpl++;
				}
			}
			int cur_pla_out=aday[i][1];
			if(cur_pla_out!=0){
				int cur_pla_var=var[cur_pla_out];
					if(sylq[cur_pla_var]>0&&isIn[cur_pla_out])sylq[cur_pla_var]--;
			}
		}
	}
	cout<<ans;
		
	return 0;
}
2021/10/24 20:13
加载中...