結果

提出番号 1440
提出者 ok
言語 C++
提出日時 2018-08-04 08:26:19
問題名 (18)おまんじゅうわけわけ
結果 AC
点数 100%

テストケース

テストケース 結果 得点 実行時間 メモリ使用量
1 AC 100% 2ms 8688KB
2 AC 100% 2ms 8128KB
3 AC 100% 2ms 8320KB
4 AC 100% 27ms 8064KB
5 AC 100% 24ms 7920KB
6 AC 100% 27ms 7760KB
7 AC 100% 24ms 8688KB
8 AC 100% 27ms 7984KB
9 AC 100% 27ms 8720KB

ソースコード

#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;
}