求助
查看原帖
求助
911983
laihanxu楼主2024/3/30 17:23

求助

#include<iostream>
#include<algorithm>
#include<math.h>
using namespace std;
int a[5],n[21],sum;
bool cmp(int xx,int yy){
	return xx>>yy;
}
int main(){
	for(int i=1;i<=4;i++)cin>>a[i];
	for(int i=1;i<=4;i++){
		int now=0;
		for(int j=1;j<=a[i];j++){
			cin>>n[j];
			now+=n[j];
		}
		sort(n+1,n+a[i]+1);
		int left=a[i],right=a[i]-1;
		int ln=0,rn=0,len=a[i]-2;
		while(ln+rn!=now){
			if(left>=1)ln++,n[left]--;
			if(right>=1)rn++,n[right]--;
			if(n[left]==0)left=max(len,0),len--;
			if(n[right]==0)right=max(len,0),len--;
//			cout<<n[left]<<" "<<n[right]<<"*\n";
		}
		sum=sum+max(ln,rn);
//		cout<<sum<<"*\n";
	}
	cout<<sum;
	return 0;
}

有大佬看看为啥错了啊

2024/3/30 17:23
加载中...