# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
989349 | 2024-05-28T03:39:44 Z | hansenhe | 사육제 (CEOI14_carnival) | C++14 | 1 ms | 344 KB |
#include <bits/stdc++.h> using namespace std; vector<int> distinct; string str = ""; bool good(int a, int mid, int num){ // from a to mid inclusive cout << mid - a + 2 << " "; str = ""; for (int i = a - 1; i <= mid - 1; i++) { cout << distinct[i] << " "; str += to_string(distinct[i]); str += " "; } cout << num << "\n"; str += to_string(num); fflush(stdout); int nwsz; cin >> nwsz; if (nwsz == mid - a + 2) return false; return true; } signed main(){ ios::sync_with_stdio(false); cin.tie(nullptr); int n; cin >> n; vector<int> bad; for (int i = 1; i <= n; i++){ str = ""; int ip = distinct.size() + 1; cout << ip << " "; str = to_string(ip); str += " "; for (int x : distinct) { cout << x << " "; str += to_string(x); str += " "; } cout << i << "\n"; str += to_string(i); fflush(stdout); int nwsz = 0; cin >> nwsz; if (nwsz == ip){ distinct.push_back(i); } else { bad.push_back(i); } } map<int, vector<int>> mp; for (int i = 1; i <= distinct.size(); i++) mp[i].push_back(distinct[i - 1]); // we now have a list of all distinct costumes for (int k : bad){ int a = 1, b = distinct.size(); while (a != b){ int mid = (a + b) / 2; if (good(a, mid, k)){ b = mid; } else { a = mid + 1; } } mp[a].push_back(k); } cout << "0 "; vector<int> ans(n); for (auto p : mp){ for (int x : p.second){ ans[x - 1] = p.first; } } for (int x : ans) cout << x << " "; cout << "\n"; fflush(stdout); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1 ms | 340 KB | Time limit exceeded (wall clock) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 0 ms | 344 KB | Time limit exceeded (wall clock) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 0 ms | 344 KB | Time limit exceeded (wall clock) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1 ms | 344 KB | Time limit exceeded (wall clock) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1 ms | 344 KB | Time limit exceeded (wall clock) |
2 | Halted | 0 ms | 0 KB | - |