CSES - HIIT Open 2016 - Results
Submission details
Task:Cent saving
Sender:Anonyymit Algoritmistit
Submission time:2016-05-28 13:16:35 +0300
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.14 sdetails
#2ACCEPTED0.13 sdetails

Code

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;


int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  
  
  
  ll t;
  cin >> t;
  
  for(int i = 0; i<t; i++) {
    
    ll n; 
    cin >> n;
    
    unordered_map<ll,ll> arvot;
    
    ll saasto = 0;
    ll summahinnoista = 0;
    
    for(int j = 0; j < n; j++) {
      ll x;
      cin >> x;
      summahinnoista += x;
      stringstream s;
      s << x;
      string lol;
      s >> lol;
      
      arvot[(lol[lol.length()-1]-'0')]++;
      
      
    }
    
    
    saasto += arvot[2]*2;
    saasto += arvot[7]*2;
    saasto += arvot[1];
    saasto += arvot[6];
    
    ll miinusykkoset = arvot[4] + arvot[9];
    ll miinuskakkoset = arvot[3] + arvot[8];
    
    ll best = min(miinuskakkoset, miinusykkoset);

    saasto += best * 2;
    miinuskakkoset -= best;
    miinusykkoset -= best;
    
    saasto += floor(miinusykkoset / 3) * 2;
    saasto += floor(miinuskakkoset / 2);
    
    saasto -= miinusykkoset % 3;
    saasto -= (miinuskakkoset % 2) * 2;
    
    
    cout << (summahinnoista-saasto) << endl;
  }
  
}

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