若两数组总和不等则无法实现后续操作;否则最少操作数为所有需增加位置的差值之和:

void solve(){
    int n;cin>>n;
    vll a(n),b(n);
    for(int i=0;i<n;++i)cin>>a[i];
    for(int i=0;i<n;++i)cin>>b[i];
    ll s1=0,s2=0;
    for(int i=0;i<n;++i){
        s1+=a[i];
        s2+=b[i];
    }
    if(s1!=s2){
        cout<<-1<<endl;
        return;
    }
    ll ans=0;
    for(int i=0;i<n;++i){
        ll d=b[i]-a[i];
        if(d>0)ans+=d;
    }
    cout<<ans<<endl;
}