Submission #39421

#TimeUsernameProblemLanguageResultExecution timeMemory
39421adamczh1Akcija (COCI15_akcija)C++14
80 / 80
16 ms2408 KiB
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef pair<int,int> pii;

#define SIZE(x) (int)(x).size()
#define ALL(x) (x).begin(),(x).end()
#define ff first
#define ss second

inline ll readi(){
	ll x=0,f=1;char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
	while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
	return x*f;
}

int main(){
	int N=readi();
	vector<int> c(N);
	for(int i=0;i<N;i++){
		c[i]=readi();
	}
	sort(c.begin(),c.end());
	reverse(c.begin(),c.end());
	ll ans=0;
	while(SIZE(c)%3) {
		ans+=c.back();
		c.pop_back();
	}
	while(SIZE(c)){
		c.pop_back();
		ans+=c.back();
		c.pop_back();
		ans+=c.back();
		c.pop_back();
	}
	cout<<ans<<endl;
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...