Cod sursă (job #130552)
Utilizator |
|
IP | ascuns |
---|---|---|---|
Problemă | Lanterna | Compilator | cpp | 0,44 kb |
Rundă | Arhiva de probleme | Status | evaluat |
Dată | 6 mar. 2015 19:08:03 | Scor | 60 |
#include <algorithm>
#include <fstream>
# define nmax 100001
using namespace std;
int n , v[nmax];
int main()
{ifstream f("lanterna.in");
ofstream g("lanterna.out");
int i ;
long s;
s = 0;
f >> n;
for(i = 1 ; i <= n ; i++) f >> v[i];
sort(v + 1 , v + n + 1);
while(n > 3)
{
s += min(v[1] + 2 * v[2] + v[n] , v[n] + 2 * v[1] + v[n - 1]);
n -= 2;
}
if(n == 3)
s += v[1] + v[2] + v[3];
else
s += v[2];
g<< s << "\n";
return 0;
}