제출 #1284156

#제출 시각아이디문제언어결과실행 시간메모리
1284156hssaan_arif콤보 (IOI18_combo)C++20
0 / 100
8 ms484 KiB
#include "combo.h" #include <bits/stdc++.h> using namespace std; #define pb push_back string guess_sequence(int N) { int n = N; if (n == 1){ int p = press("A"); if (p){ // cout << "A" << endl; return "A"; } p = press("B"); if (p){ // cout << "B" << endl; return "B"; } p = press("X"); if (p){ // cout << "X" << endl; return "X"; } return "Y"; } string s = "AB" ; string F = ""; int p = press(s); if (p){ s = "A"; p = press(s); if (p){ F = "A"; }else{ F = "B"; } }else{ s = "YAYBYXX"; p = press(s); if (p == 2){ F = 'Y'; }else{ F = 'X'; } } vector<string> S; if (F != "A"){ S.pb("A"); } if (F != "B"){ S.pb("B"); } if (F != "X"){ S.pb("X"); } if (F != "Y"){ S.pb("Y"); } string ans = ""; ans += F; for (int i = 1 ; i < n ; i++){ // cout << ans << " "; if (i == n-1){ string s = ""; s += ans; s += S[0]; int p = press(s); if (p == i+1){ ans += S[0]; continue; } s = ""; s += ans; s += S[1]; p = press(s); if (p == i+1){ ans += S[1]; continue; } ans += S[2]; continue; } string s = ""; s += ans; s += S[0]; s += ans; s += S[1]; s += S[0]; s += ans; s += S[1]; s += S[1]; s += ans; s += S[1]; s += S[2]; // cout << s << endl; int p = press(s); if (p == i){ ans += S[2]; }else if (p == i+1){ ans += S[0]; }else{ ans += S[1]; } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...