我只有92分
#include <bits/stdc++.h>
using namespace std;
struct node{
int a,b,s;
}m[10005];
bool flag = false;
int n,k,ans = 0;
inline bool cmp(node x,node y)
{
if(min(x.a,y.b) < min(y.a,x.b))
{
return true;
}
return false;
}
int main()
{
cin>>n;
for(int i = 0;i < n;i++)
{
cin>>m[i].a;
m[i].s = i + 1;
}
for(int i = 0;i < n;i++)
{
cin>>m[i].b;
}
stable_sort(m,m + n,cmp);
for(int i = 0;i < n;i++)
{
k += m[i].a;
ans = max(ans,k);
ans += m[i].b;
}
cout<<ans<<endl;
for(int i = 0;i < n;i++)
{
cout<<m[i].s<<" ";
}
return 0;
}