找到数组中最大的数并扩散至整个数组,整个数组左右两端不受影响
#include <bits/stdc++.h>
usingnamespacestd;
#define ll long long
intmain() {
ll t;
cin >> t;
while(t--) {
ll n;
cin >> n;
vector<ll> a(n+1);
ll x=0;
for(ll i = 1; i <= n; i++) {
cin >> a[i];
}
for(ll i = 1; i <= n; i++) {
x=max(x,a[i]);
}
cout<<(n-2)*x+a[1]+a[n]<<endl;
}
}

京公网安备 11010502036488号