There are n cities in Byteland, and the ith city has a value ai. The cost of building a bidirectional road between two cities is the sum of their values. Please calculate the minimum cost of connecting these cities, which means any two cities can reach each other.
The first line is an integer T(T≤10^5), representing the number of test cases.
For each test case, the first line is an integer n(n≤10^5), representing the number of cities, the second line are n positive integers ai(ai≤10^5), representing their values.
For each test case, output an integer ans, the minimum cost of connecting these cities.
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
int T;
cin>>T;
while(T--)
{
int n;
cin>>n;
if(n==1)
{
cout<<0<<endl;
continue;
}
int a[100005];
cin>>a[0];
int minx = a[0];
int index = 0;
for(int i=1;i<n;i++)
{
cin>>a[i];
if(a[i]<minx)
{
minx = a[i];
index = i;
}
}
long long int ans = 0;
for(int i=0;i<n;i++)
{
if(i!=index)
{
ans+=minx+a[i];
}
}
cout<<ans<<endl;
}
}