求助,题解数据和自带数据能过,提交爆零?
查看原帖
求助,题解数据和自带数据能过,提交爆零?
532694
IngSoc1984楼主2022/3/25 16:29
#include<bits/stdc++.h>
using namespace std;
struct node{
	int p;
	int h;
	int l;
	int sv;
}a[100005];
int cmp(node x,node y){
	if(x.p!=y.p)return x.p>y.p;
	else return x.l<y.l;
}
int main(){
	int n,m;
	cin>>n>>m;
	for(int i=1;i<=n-1;i++){
		cin>>a[i].p;
		a[i].sv=a[i].p;
		a[i].h=1;
		a[i].l=m-1;
	}
	for(int i=n;i<=n-1+m-1;i++){
		cin>>a[i].p;
		a[i].sv=a[i].p;
		a[i].h=0;
		a[i].l=n-1;
	}
	sort(a+1,a+n+1,cmp);
	for(int i=1;i<=n+m-1-1;i++){
		if(a[i].h==1){
			for(int j=i;j<n+m+2;j++){
				if(a[j].h==0) a[j].p=a[j].p+a[j].sv;
			}
		}
		if(a[i].h==0){
			for(int j=i;j<n+m+2;j++){
				if(a[j].h==1) a[j].p=a[j].p+a[j].sv;
			}
		}
	}
	long long ans=0;
	for(int i=1;i<=n+m-1-1;i++){
		ans+=a[i].p;
	}
	cout<<ans;
	return 0;
}
2022/3/25 16:29
加载中...