Submission #717259

# Submission time Handle Problem Language Result Execution time Memory
717259 2023-04-01T18:36:59 Z vjudge1 Table Tennis (info1cup20_tabletennis) C++17
58 / 100
3000 ms 82800 KB
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#define int long long
#define endl '\n'
using namespace std;
using namespace __gnu_pbds;
using ordered_set = tree<pair<int,int>,null_type,less<pair<int,int>>,rb_tree_tag,tree_order_statistics_node_update>;
int n,k;
void slv(deque<int>dq,int p){
    int kk=k;
    deque<int>a,b;
    while(dq.size()){
        if(dq.size()==1){
            kk--;
            break;
        }
        int f=dq.back();
        dq.pop_back();
        auto it=lower_bound(dq.begin(),dq.end(),p-f);
        if(it==dq.end()||*it!=p-f){
            kk--;
            continue;
        }else{
            while(dq.front()!=*it){
                dq.pop_front();
                kk--;
            }
            a.push_back(dq.front());
            b.push_front(f);
            dq.pop_front();
        }
    }
    if(kk==0){
        for(auto &i:a)cout<<i<<' ';
        for(auto &i:b)cout<<i<<' ';
        exit(0);
    }
}
signed main(){
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    cin>>n>>k;
    deque<int>dq(n+k);
    for(auto &i:dq)cin>>i;
    srand(543634);
    map<int,int>mp;
    vector<pair<int,int>>v;
    for(int i=0;i<1000000;i++)mp[abs(dq[rand()%(n+k)]+dq[rand()%(n+k)])]++;
    for(auto &i:mp)v.push_back({i.second,i.first});
    sort(v.begin(),v.end());
    for(int i=v.size()-1;i>=0;i--){
        slv(dq,v[i].second);
    }
}
# Verdict Execution time Memory Grader output
1 Correct 706 ms 38672 KB Output is correct
2 Correct 150 ms 964 KB Output is correct
3 Correct 771 ms 53096 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 257 ms 4156 KB Output is correct
2 Correct 1324 ms 82752 KB Output is correct
3 Correct 1225 ms 82696 KB Output is correct
4 Correct 1209 ms 82800 KB Output is correct
# Verdict Execution time Memory Grader output
1 Execution timed out 3026 ms 78904 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 165 ms 1256 KB Output is correct
2 Correct 153 ms 1580 KB Output is correct
3 Correct 161 ms 1740 KB Output is correct
4 Correct 164 ms 1640 KB Output is correct
5 Correct 174 ms 1644 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 78 ms 308 KB Output is correct
2 Correct 73 ms 212 KB Output is correct
3 Correct 70 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 79 ms 340 KB Output is correct
2 Correct 150 ms 2300 KB Output is correct
3 Correct 1048 ms 64780 KB Output is correct
4 Correct 799 ms 54284 KB Output is correct
5 Correct 245 ms 2292 KB Output is correct
6 Correct 135 ms 1144 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 80 ms 320 KB Output is correct
2 Correct 1202 ms 82460 KB Output is correct
3 Correct 1476 ms 82512 KB Output is correct
4 Correct 2707 ms 73148 KB Output is correct
5 Correct 1176 ms 82428 KB Output is correct
6 Execution timed out 3071 ms 22692 KB Time limit exceeded
7 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 306 ms 8248 KB Output is correct
2 Execution timed out 3104 ms 80964 KB Time limit exceeded
3 Halted 0 ms 0 KB -