# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
988166 | 2024-05-24T07:42:43 Z | vjudge1 | Super Dango Maker (JOI22_dango3) | C++17 | 2056 ms | 1104 KB |
#include<bits/stdc++.h> #include "dango3.h" using namespace std; /*int Query(vector<int> &x) { cout<<"? "; for(int i : x) cout<<i<<" "; cout<<endl; int a; cin>>a; return a; } void Answer(vector<int> &a) { cout<<"! "; for(int i : a) cout<<i<<" "; cout<<endl; }*/ void Solve(int n, int m) { //n: number of color bool f[n*m+1]; memset(f, 0, sizeof(f)); vector<vector<int>> wtf; for(int i = 1; i < n*m; i++){ int l = 0, r = wtf.size()-1, ans = -1; while(l <= r){ int mid = (l+r+2)/2-1; vector<int> question; for(int j = 0; j <= mid; j++){ for(int k : wtf[j]) f[k] = 1; } f[i] = 1; for(int j = 1; j <= n*m; j++) if(f[j] == 0) question.push_back(j); for(int j = 0; j <= mid; j++){ for(int k : wtf[j]) f[k] = 0; } f[i] = 0; int sus = Query(question); if(sus == m-mid-1){ans = mid; r = mid-1;} else l = mid+1; } if(ans == -1){ wtf.push_back({i}); //cout<<i<<" "<<wtf.size()<<endl; } else{ wtf[ans].push_back(i); //cout<<i<<" "<<ans+1<<endl; } } for(int i = 0; i < m; i++) if(wtf[i].size() < n) wtf[i].push_back(n*m); for(vector<int> i : wtf) Answer(i); } /*int main() { Solve(3, 2); }*/
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 352 KB | Output is correct |
2 | Correct | 1 ms | 348 KB | Output is correct |
3 | Correct | 1 ms | 348 KB | Output is correct |
4 | Correct | 0 ms | 344 KB | Output is correct |
5 | Correct | 1 ms | 348 KB | Output is correct |
6 | Correct | 1 ms | 600 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 13 ms | 344 KB | Output is correct |
2 | Correct | 13 ms | 348 KB | Output is correct |
3 | Correct | 15 ms | 348 KB | Output is correct |
4 | Correct | 16 ms | 344 KB | Output is correct |
5 | Correct | 12 ms | 348 KB | Output is correct |
6 | Correct | 12 ms | 600 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 410 ms | 572 KB | Output is correct |
2 | Correct | 402 ms | 572 KB | Output is correct |
3 | Correct | 518 ms | 600 KB | Output is correct |
4 | Correct | 514 ms | 592 KB | Output is correct |
5 | Correct | 344 ms | 344 KB | Output is correct |
6 | Correct | 340 ms | 560 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1625 ms | 852 KB | Output is correct |
2 | Correct | 1666 ms | 668 KB | Output is correct |
3 | Correct | 2017 ms | 940 KB | Output is correct |
4 | Correct | 2056 ms | 1104 KB | Output is correct |
5 | Correct | 1355 ms | 644 KB | Output is correct |
6 | Correct | 1371 ms | 856 KB | Output is correct |