CSES - Putka Open 2020 – 2/5 - Results
Submission details
Task:Kortit
Sender:Lieska
Submission time:2020-09-25 18:04:47 +0300
Language:C++ (C++17)
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED23
#2ACCEPTED77
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1, 2details
#2ACCEPTED0.02 s2details

Code

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

void tapaus(){
    int n;
    cin >> n;
    set<int> s, v;
    int r[111]={};
    for (int i=1; i<=n/2; ++i){
        int a;
        cin >> a;
        s.insert(a);
        r[a]=1;
    }
    for (int i=1; i<=n; ++i){
        if (r[i]==0) v.insert(i);
    }
    int ans=0;
    for (int i=1; i<=n/2; ++i){
        auto it=v.end();
        it--;
        auto ir=s.end();
        ir--;
        if (*ir>*it){
            ans++;
            s.erase(*ir);
        }
        else{
            ir=s.begin();
            s.erase(*ir);
        }
        v.erase(*it);
    }
    cout << ans << "\n";
}

int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int t;
    cin >> t;
    while (t--) tapaus();
}

Test details

Test 1

Group: 1, 2

Verdict: ACCEPTED

input
1000
2
1
6
2 4 5
...

correct output
0
2
0
2
1
...

user output
0
2
0
2
1
...
Truncated

Test 2

Group: 2

Verdict: ACCEPTED

input
1000
70
56 23 58 70 2 57 27 61 47 3 42...

correct output
30
15
1
38
29
...

user output
30
15
1
38
29
...
Truncated