20pts
查看原帖
20pts
1095806
Supa7onyz楼主2024/10/3 21:40
#include <iostream>
using namespace std;
int T;
int main()
{
    cin>>T;
    while (T--){
        int n;
        cin>>n;
        long long a[n+10],b[n+10];
        for (int i=1;i<=n;i++){
            cin>>a[i];
        }
        for (int i=1;i<=n;i++){
            cin>>b[i];
        }
        if (b[1]==b[n]){
            cout<<a[1]+a[n]<<endl;
        }else{
            long long ans=0xffffff;
            for (int i=2;i<=n;i++){
                if (b[i]==b[n]){
                    ans=min(ans,(a[1]+a[i-1])+(a[i]+a[n]));
                }
            }
            cout<<ans<<endl;
        }
    }
    return 0;
}
2024/10/3 21:40
加载中...