Pagini recente »
Cod sursă (job #711068)
|
Cod sursă (job #195694)
|
Borderou de evaluare (job #21000)
|
Cod sursă (job #491900)
|
Cod sursă (job #696770)
Cod sursă (job
#696770)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("lanterna.in");
ofstream out("lanterna.out");
int n ;
int v [ 100001 ];
int main()
{
int cost = 0;
in >> n ;
for ( int i = 1; i <= n ; i ++ )
in >> v [ i ] ;
sort ( v + 1, v + n + 1) ;
int i = n ;
while ( i > 3 )
{
int a = v [ 1 ] + 2 * v [ 2 ] + v [ i ];
int b = v [ i ] + v [ 1 ] + v [ i - 1 ] + v [ 1 ] ;
cost += min ( a , b );
i -= 2;
}
if ( i == 3 )
{
cost += v [ 1 ] + v [ 2 ] + v [ 3 ];
}
else
{
cost += v [ 2 ] ;
}
out << cost ;
return 0;
}