제출 #73793

#제출 시각아이디문제언어결과실행 시간메모리
73793arman_ferdousCarnival (CEOI14_carnival)C++17
100 / 100
35 ms824 KiB
#include <bits/stdc++.h> using namespace std; const int N = 155; int n, ans[N], dp[N][N]; int ask(int l, int r) { if(dp[l][r]) return dp[l][r]; if(l == r) return 1; cout << r - l + 1; for(int i = l; i <= r; i++) cout << " " << i; cout << endl; int ret; cin >> ret; return dp[l][r] = ret; } int main() { cin >> n; fill(ans+1,ans+n+1,-1); int cur = 1; for(int i = 1; i <= n; i++) { if(ans[i] == -1) ans[i] = cur++; int lo = i+1, hi = n, idx = i; while(lo <= hi) { int mid = (lo + hi) >> 1; if(ask(i,mid) != ask(i+1,mid)) idx = mid, lo = mid+1; else hi = mid-1; } ans[idx+1] = ans[i]; } cout << "0"; for(int i = 1; i <= n; i++) cout << " " << ans[i]; 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...