100pts求调
查看原帖
100pts求调
964645
pies_0x楼主2024/6/30 15:23
#include<bits/stdc++.h>
using namespace std;

#define N 1005
#define int long long

struct node
{
	int a,b,i;
	bool operator<(const node &j)const{return a+max(b,j.a)+j.b<j.a+max(j.b,a)+b;}
}a[N];
int n;

signed main()
{
	scanf("%lld",&n);
	for(int i=1;i<=n;++i)
		scanf("%d",&a[i].a),a[i].i=i;
	for(int i=1;i<=n;++i)
		scanf("%lld",&a[i].b);
	sort(a+1,a+n+1);
	int suma=0,sumb=0;
	for(int i=2;i<=n;++i)
		suma+=a[i].a;
	for(int i=1;i<n;++i)
		sumb+=a[i].b;
	printf("%lld\n",a[1].a+max(suma,sumb)+a[n].b);
	for(int i=1;i<=n;++i)
		printf("%lld ",a[i].i);
	return 0;
}
2024/6/30 15:23
加载中...