Submission #144331

#TimeUsernameProblemLanguageResultExecution timeMemory
144331mosesmayerCombo (IOI18_combo)C++17
100 / 100
45 ms524 KiB
#include "combo.h" #include <iostream> #include <string> using namespace std; std::string guess_sequence(int N) { std::string p = ""; string guess, ans = ""; char g[3]; guess = "AB"; int ret = press("AB"); if (ret >= 1){ ret = press("A"); if (ret == 0){ ans += "B"; g[0] = 'A', g[1] = 'X', g[2] = 'Y'; } else { ans += "A"; g[0] = 'B', g[1] = 'X', g[2] = 'Y'; } } else { ret = press("X"); if (ret == 0){ ans += "Y"; g[0] = 'A', g[1] = 'X', g[2] = 'B'; } else { ans += "X"; g[0] = 'B', g[1] = 'A', g[2] = 'Y'; } } for (int i = 2; i <= N-1; i++){ guess = ""; guess += ans; guess += g[0]; guess += g[0]; guess += ans; guess += g[0]; guess += g[1]; guess += ans; guess += g[0]; guess += g[2]; guess += ans; guess += g[1]; ret = press(guess) - ans.length(); if (ret == 0){ ans += g[2]; } else if (ret == 1){ ans += g[1]; } else { ans += g[0]; } } if (N==1) return ans; guess = ans + g[0] + ans + g[1]; ret = press(guess) - ans.length(); if (ret >= 1){ guess = ans + g[0]; ret = press(guess) - ans.length(); if (ret == 0) ans += g[1]; else ans += g[0]; } else { ans += g[2]; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...