CSES - HIIT Open 2016 - Results
Submission details
Task:Cent saving
Sender:Oispa Kaljaa
Submission time:2016-05-28 14:33:37 +0300
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.06 sdetails
#2ACCEPTED0.07 sdetails

Code

#include <bits/stdc++.h>
#define i64 long long
using namespace std;
int main(){
cin.sync_with_stdio(0);
cin.tie(0);
int tests; cin >> tests;
i64 p[101010];
while(tests--){
int n; cin >> n;
i64 sum = 0;
for(int i = 0; i < n; i++){
cin >> p[i];
if(p[i]%5 < 3)
sum+=p[i]-(p[i]%5);
else
sum+=p[i]+(5-p[i]%5);
}
i64 c[5] = {0};
for(int i = 0; i < n; i++)
c[p[i]%5]++;
i64 be = 0;
i64 m34 = min(c[3], c[4]);
be = max(be, m34*5+(c[3]-m34)/2*5+(c[4]-m34)/3*5);
i64 be2 = c[3]/2*5+c[4]/3*5;
if(c[3]%2==1 && c[4]%3 > 0)
be2+=5;
be = max(be, be2);
cout << sum-be << endl;
}
return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
100
1000
528433894 255789530 559301042 ...

correct output
475191144965
460688647850
478543444030
475238936090
456736521510
...

user output
475191144965
460688647850
478543444030
475238936090
456736521510
...
Truncated

Test 2

Verdict: ACCEPTED

input
1
100000
666086355 190481330 514353517 ...

correct output
47176864928795

user output
47176864928795