Cod sursă (job #157216)

Utilizator avatar cips Stanciu Gabriel-Ciprian cips IP ascuns
Problemă Lanterna Compilator cpp | 0,62 kb
Rundă Arhiva de probleme Status evaluat
Dată 1 oct. 2015 10:58:03 Scor 50
#include <fstream>
using namespace std;

int n, t[100001];

void ssort(int nr, int v[]){
	int i, j, aux;
	for (i=nr; i>1; i--){
		aux=i;
		for (j=1; j<i; j++)
			if (v[aux]<v[j])
				aux=j;
		j=v[i];
		v[i]=v[aux];
		v[aux]=j;
	}
}

int main(){
	int i, a, b, S;
	ifstream fin ("lanterna.in");
	fin >> n;
	for (i=1; i<=n; i++)
		fin >> t[i];
	fin.close();
	ssort(n, t);
	S=0;
	while (n>3){
		a=t[1]+t[2]*2+t[n];
		b=t[1]*2+t[n-1]+t[n];
		S+=(a>b)?b:a;
		n-=2;
	}
	if (n==3)
		S+=t[1]+t[2]+t[3];
	else
		S+=t[2];
	ofstream fout ("lanterna.out");
	fout << S << '\n';
	fout.close();
	return 0;
}