| Time Limit: 1000MS | Memory Limit: 10000K | |
| Total Submissions: 10311 | Accepted: 3889 |
Description
Input
Output
Sample Input
1 4 1 2 5 10
Sample Output
17
#include<cstdio>
#include<algorithm>
#define maxn 100001
using namespace std;
int time[maxn];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n,sum=0;
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d",time+i);
sort(time+1,time+n+1);
while(n)
{
if(n==1)
{
sum+=time[1];
n=0;
}
else if(n==2)
{
sum+=time[2];
n=0;
}
else if(n==3)
{
sum+=time[1]+time[2]+time[3];
n=0;
}
else
{
if(time[2]*2>=time[1]+time[n-1])
sum+=2*time[1]+time[n]+time[n-1];
else
sum+=2*time[2]+time[1]+time[n];
n-=2;
}
}
printf("%d\n",sum);
}
return 0;
}
原文:http://www.cnblogs.com/mengfanrong/p/5188262.html