Submission #745818

#TimeUsernameProblemLanguageResultExecution timeMemory
745818vjudge1Table Tennis (info1cup20_tabletennis)C++17
49 / 100
3077 ms124604 KiB
#include <bits/stdc++.h>
using namespace std;
vector<bool> m;
vector<int> scores;
int n, k;

bool possible(int a, int b){
    int sum = scores[a] + scores[b];
    vector<int> square;
    for (int i=a; i<n+k; i++){
        if (scores[i] * 2 < sum && m[sum - scores[i]]){
            square.push_back(scores[i]);
        }
    }
    if (square.size() < n/2) return false;
    sort(square.begin(), square.end());
    for (int i=0; i<n/2; i++){
        cout << square[i] << " ";
    }
    for (int i=n/2-1; i>=0; i--){
        cout << sum - square[i] << " ";
    }
    return true;
}

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cin >> n >> k;
    scores.resize(n+k);
    m.assign(1e9+1, 0);
    for (int i=0; i<n+k; i++){
        cin >> scores[i];
        m[scores[i]] = true;;
    }
    for (int i=0; i<=k; i++){
        for (int j=i+1; j<n+k; j++){
            if (possible(i, j)){
                return 0;
            }
        }
    }
}

Compilation message (stderr)

tabletennis.cpp: In function 'bool possible(int, int)':
tabletennis.cpp:15:23: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   15 |     if (square.size() < n/2) return false;
      |         ~~~~~~~~~~~~~~^~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...