Cod sursă (job #169066)

Utilizator avatar AndreiStan Andrei Stan AndreiStan IP ascuns
Problemă Lanterna Compilator cpp | 0,65 kb
Rundă Arhiva de probleme Status evaluat
Dată 27 nov. 2015 19:20:30 Scor 50
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("lanterna.in");
ofstream g("lanterna.out");
int n,aux,t1,t2,s,t[100001],ok,i;
int main()
{
    f>>n;
    for(i=1;i<=n;i++)f>>t[i];
    while(ok==0){ok=1;
        for(i=1;i<n;i++)
            if(t[i]>t[i+1]){
                aux=t[i];
                t[i]=t[i+1];
                t[i+1]=aux;
                ok=0;
            }
    }
    while(n>3){
        t1=t[1]+t[2]*2+t[n];
        t2=t[1]*2+t[n-1]+t[n];
        if(t1<=t2)s+=t1;
        else     s+=t2;
        n-=2;
    }
    if(n==3)
        s+=t[1]+t[2]+t[3];
    if(n<3)
        s+=t[2];
    g<<s;
}