Submission #914649

# Submission time Handle Problem Language Result Execution time Memory
914649 2024-01-22T13:09:31 Z NValchanov Table Tennis (info1cup20_tabletennis) C++17
100 / 100
258 ms 6344 KB
#include<bits/stdc++.h>

#define endl '\n'

using namespace std;

typedef long long ll;

const ll MAXN=1e5+5e4+10;
const ll MAXK=4e2+10;
const ll MAXA=1e9+10;

ll a[MAXN+MAXK],n,k,m;
vector<ll>ans;

void read()
{
    cin>>n>>k;
    m=n+k;
    for(ll i=1;i<=m;i++)
        cin>>a[i];
}

void print()
{
    sort(ans.begin(), ans.end());
    ll sz=ans.size();
    for(ll i=0;i<sz;i++)
    {
        cout<<ans[i]<<" ";
    }
    cout<<endl;
}

void solve()
{
    for(ll i=n/2;i<=n/2+k+1;i++)
    {
        ll cur=a[i]+a[i+1];
        ll left=1,right=n+k;
        ll cnt=0;
        ans.clear();
        while(left<right&&cnt<n/2)
        {
            ///cout<<"Lqwa granica : "<<left<<endl;
            while(left<right&&a[left]+a[right]>cur)
            {
                right--;
                ///cout<<"Dqsna granica : "<<right<<endl;
            }
            if(left<right&&a[left]+a[right]==cur)
            {
                ans.push_back(a[left]);
                ans.push_back(a[right]);
                ///cout<<"Nowo dobawqne na "<<left<<" i "<<right<<endl;
                cnt++;
            }
            left++;
        }
        if(cnt==n/2)
        {
            print();
            return;
        }
    }
}

int main()
{
    #ifdef ONLINE_JUDGE
    freopen(".in", "r", stdin);
    freopen(".out", "w", stdout);
#endif
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr);
	cout.tie(nullptr);

    read();
    solve();

	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 992 KB Output is correct
2 Correct 29 ms 5984 KB Output is correct
3 Correct 30 ms 5736 KB Output is correct
4 Correct 36 ms 5836 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 26 ms 4304 KB Output is correct
2 Correct 35 ms 5884 KB Output is correct
3 Correct 26 ms 5836 KB Output is correct
4 Correct 26 ms 6344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 1 ms 464 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 0 ms 464 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 600 KB Output is correct
3 Correct 1 ms 544 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 1 ms 604 KB Output is correct
4 Correct 1 ms 604 KB Output is correct
5 Correct 1 ms 348 KB Output is correct
6 Correct 1 ms 600 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 40 ms 4300 KB Output is correct
3 Correct 37 ms 5696 KB Output is correct
4 Correct 27 ms 5844 KB Output is correct
5 Correct 27 ms 5836 KB Output is correct
6 Correct 26 ms 5680 KB Output is correct
7 Correct 32 ms 5956 KB Output is correct
8 Correct 30 ms 5836 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 258 ms 4296 KB Output is correct
3 Correct 26 ms 5840 KB Output is correct
4 Correct 73 ms 5752 KB Output is correct
5 Correct 59 ms 5684 KB Output is correct
6 Correct 27 ms 5836 KB Output is correct
7 Correct 79 ms 5752 KB Output is correct
8 Correct 71 ms 5708 KB Output is correct