ソースコード
#include<bits/stdc++.h>
using namespace std;
long long mod[3][101000], A[101000];
int main(){
long long int N, ans=0, counta=0, countb=0;
cin>>N;
for(int i = 1; i<= N; i++){
cin>>A[i];
}
sort(A+1, A+N+1, greater<long long>());
for(int i = 1; i<= N; i++){//cout<<A[i]<<endl;
if(A[i]%3==0)ans += A[i];
else if(A[i]%3==1) mod[1][counta++]=A[i];
else mod[2][countb++]=A[i];
if((counta+(countb)*2)%3==0){
for(int i = 0; i < counta; i++)ans += mod[1][i];
for(int i = 0; i < countb; i++)ans += mod[2][i];
counta=0;countb=0;
}
}
if(!ans)ans=-1;
cout<<ans<<endl;
return 0;
}