有大佬能帮我看看我为什么只有25分么?
查看原帖
有大佬能帮我看看我为什么只有25分么?
352918
I_think_so_i_am_here楼主2023/8/22 22:44

虽然我知道这个码会TLE,但是只T了一个点,希望哪位大佬能帮我看看怎么过掉其他没T的点。

AC的点:2、4、9、15、16、21

TLE的点(可以先不管):22

WA的点:其他 这是我的代码

#include<bits/stdc++.h>
using namespace std;
int k,n,m; 
int s,e;
int np[100010],wp[100010],nt[100010],wt[100010],nei,wai;
int maxx;
int main(){
	cin>>k>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>s>>e;
		bool f=true;
		for(int j=1;j<=nei;j++){
			if(s>nt[j]){
				nt[j]=e;
				np[j]++;
				f=false;
				break;
			}
		}
		if(f&&nei<k)nei++,nt[nei]=e,np[nei]=1;
	}
	for(int i=1;i<=m;i++){
		cin>>s>>e;
		bool f=true;
		for(int j=1;j<=wai;j++){
			if(s>wt[j]){
				wt[j]=e;
				wp[j]++;
				f=false;
				break;
			}
		}
		if(f&&wai<k)wai++,wt[wai]=e,wp[wai]=1;
	}
	for(int i=1;i<=k;i++)np[i]+=np[i-1];
	for(int i=0;i<=k;i++)wp[i]+=wp[i-1];
	for(int i=0;i<=k;i++)maxx=max(maxx,wp[i]+np[k-i]);
	cout<<maxx<<endl;
    return 0;
}

2023/8/22 22:44
加载中...