Cod sursă (job #21832)

Utilizator avatar CM_Punk Eftime Andrei CM_Punk IP ascuns
Problemă Lanterna Compilator cpp | 0,56 kb
Rundă Arhiva de probleme Status evaluat
Dată 3 sept. 2013 18:11:49 Scor 100
#include<stdio.h>
#include<algorithm>
using namespace std;
int v[100002];
int main()
{
	freopen("lanterna.in","r",stdin);
	freopen("lanterna.out","w",stdout);
	int n,i,a,b;
	long long t=0;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
		scanf("%d",&v[i]);
	sort(v+1,v+1+n);
	while(n)
	{
		if(n>3)
		{
			a=v[1]+2*v[2]+v[n];
			b=2*v[1]+v[n]+v[n-1];
			if(a>b)
				t=t+b;
			else
				t=t+a;
			n=n-2;
			continue;
		}
		if(n==3)
		{
			t=t+v[1]+v[2]+v[3];
			break;
		}
		if(n==2)
		{
			t=t+v[2];
			break;
		}	
	}
	printf("%lld\n",t);
	return 0;
}