제출 #1231711

#제출 시각아이디문제언어결과실행 시간메모리
1231711AishaTable Tennis (info1cup20_tabletennis)C++20
0 / 100
3094 ms12096 KiB
#include "bits/stdc++.h" using namespace std; #define int long long signed main() { int n, k; cin >> n >> k; vector <int> a(n + k); for (int i = 0; i < n + k; i ++) cin >> a[i]; // a is sorted vector <int> v(n + k); int cnt1, cnt2, cnt0, sum1, sum2; cnt1 = cnt2 = cnt0 = sum1 = sum2 = 0; bool ok = false; auto rec = [&](auto&& rec, int i) -> void { if (ok) return; if (cnt1 > n / 2 || cnt2 > n / 2 || cnt0 > k) return; if (i == n + k) { if (cnt1 != n / 2 || cnt2 != n / 2 || cnt0 != k) return; if (sum1 != sum2) return; for (int j = 0; j < n + k; j ++) { if (v[j] > 0) cout << a[j] << ' '; } cout << endl; ok = true; return; } cnt0 ++; rec(rec, i + 1); cnt0 --; v[i] = 1; cnt1 ++; sum1 += a[i]; rec(rec, i + 1); v[i] = 0; cnt1 --; sum1 -= a[i]; v[i] = 2; cnt2 ++; sum2 += a[i]; rec(rec, i + 1); v[i] = 0; cnt2 --; sum2 -= a[i]; }; rec(rec, 0); return 0; }
#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...