Submission #717200

# Submission time Handle Problem Language Result Execution time Memory
717200 2023-04-01T13:03:55 Z vjudge1 Table Tennis (info1cup20_tabletennis) C++17
53 / 100
3000 ms 4608 KB
#include <bits/stdc++.h>
using namespace std;

int n, k;
vector<int> a;

bool check(int sum) {
    int l = 1, r = n + k;
    int good = 0;
    while (l < r) {
        if (a[l] + a[r] == sum) {
            good += 2;
            l++; r--;
            if (good >= n) return true;
        } else if (a[l] + a[r] < sum) {
            l++;
        } else {
            r--;
        }
    }
    return false;
}

vector<int> construct(int sum) {
    int l = 1, r = n + k;
    vector<int> ans;
    while (l < r) {
        if (a[l] + a[r] == sum) {
            ans.push_back(a[l]);
            ans.push_back(a[r]);
            l++; r--;
            if (ans.size() == n) break;
        } else if (a[l] + a[r] < sum) {
            l++;
        } else {
            r--;
        }
    }
    sort(ans.begin(), ans.end());
    return ans;
}

int main() {
    ios::sync_with_stdio(false);
    cin >> n >> k;
    a.resize(n + k + 1);
    for (int i = 1; i <= n + k; i++) cin >> a[i];
    int sum = -1;
    for (int i = 1; i <= k && sum == -1; i++) {
        for (int j = n + k; j >= n; j--) {
            if (check(a[i] + a[j])) {
                sum = a[i] + a[j];
                break;
            }
        }
    }
    assert(sum != -1);
    vector<int> ans = construct(sum);
    for (int x : ans) cout << x << " ";
    cout << endl;
    return 0;
}

Compilation message

tabletennis.cpp: In function 'std::vector<int> construct(int)':
tabletennis.cpp:32:28: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   32 |             if (ans.size() == n) break;
      |                 ~~~~~~~~~~~^~~~
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 468 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 7 ms 980 KB Output is correct
2 Runtime error 20 ms 3148 KB Execution killed with signal 6
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 33 ms 4528 KB Output is correct
2 Correct 34 ms 4556 KB Output is correct
3 Runtime error 18 ms 3076 KB Execution killed with signal 6
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 5 ms 324 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 2 ms 324 KB Output is correct
5 Correct 1 ms 324 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 320 KB Output is correct
2 Correct 1 ms 316 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 320 KB Output is correct
2 Correct 2 ms 340 KB Output is correct
3 Correct 2 ms 340 KB Output is correct
4 Correct 1 ms 340 KB Output is correct
5 Correct 1 ms 324 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 316 KB Output is correct
2 Correct 218 ms 4548 KB Output is correct
3 Correct 36 ms 4528 KB Output is correct
4 Correct 69 ms 4464 KB Output is correct
5 Correct 47 ms 4484 KB Output is correct
6 Correct 47 ms 4608 KB Output is correct
7 Correct 65 ms 4532 KB Output is correct
8 Correct 38 ms 4424 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 212 KB Output is correct
2 Execution timed out 3045 ms 2252 KB Time limit exceeded
3 Halted 0 ms 0 KB -