제출 #1204220

#제출 시각아이디문제언어결과실행 시간메모리
1204220NK_COVID tests (CEOI24_covid)C++20
42.29 / 100
825 ms436 KiB
// Success consists of going from failure to failure without loss of enthusiasm #include <bits/stdc++.h> using namespace std; #define nl '\n' #define pb push_back #define sz(x) int(x.size()) template<class T> using V = vector<T>; using vi = V<int>; int N; double P; bool qry(vi sample) { if (sz(sample) == 0) return false; // assert(mask.size() == (size_t)N); string mask_str(N, '0'); for(auto& i : sample) mask_str[i] = '1'; printf("Q %s\n", mask_str.c_str()); fflush(stdout); char answer; scanf(" %c", &answer); return answer == 'P'; } vi get() { vi ans; int K = 3; vi X; for(int i = 0; i < N; i++) X.pb(i); function<void(vi)> dnc = [&](vi A) { if (sz(A) == 1) { ans.pb(A.front()); return; } V<vi> S(K); for(int i = 0; i < sz(A); i++) S[i % K].pb(A[i]); for(int i = 0; i < K; i++) if (qry(S[i])) dnc(S[i]); }; dnc(X); return ans; } int main() { int T; scanf("%d %lf %d", &N, &P, &T); // You may perform any extra initialization here. for (int i = 0; i < T; i++) { vi answer = get(); // assert(answer.size() == (size_t)N); string answer_str(N, '0'); for(auto& i : answer) answer_str[i] = '1'; printf("A %s\n", answer_str.c_str()); fflush(stdout); char verdict; scanf(" %c", &verdict); if (verdict == 'W') exit(0-0); } return 0; } // Breathe In, Breathe Out

컴파일 시 표준 에러 (stderr) 메시지

Main.cpp: In function 'bool qry(vi)':
Main.cpp:27:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   27 |     scanf(" %c", &answer);
      |     ~~~~~^~~~~~~~~~~~~~~~
Main.cpp: In function 'int main()':
Main.cpp:56:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   56 |     scanf("%d %lf %d", &N, &P, &T);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp:71:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   71 |         scanf(" %c", &verdict);
      |         ~~~~~^~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...