제출 #677532

#제출 시각아이디문제언어결과실행 시간메모리
677532hello_there_123콤보 (IOI18_combo)C++17
0 / 100
0 ms208 KiB
#include<bits/stdc++.h>
//#include "combo.h"
using namespace std;

int press(string s);
string guess_sequence(int N){
  string arr[4]={"A","B","X","Y"};
  vector<string>v;
	if(N==1){
		for(int i=0;i<4;i++){
			if(press(arr[i]) == 1) return arr[i];
		}
	}
	else{
		string ans = "";
		string start = "";
		for(int i=0;i<4;i++){
          if(press(arr[i]) == 1) {
             start = arr[i];
             break;
          }
		}
		ans = start;
		for(int i=0;i<4;i++) if(arr[i]!=start) v.push_back(arr[i]);
      	assert(v.size() == 3);
		for(int i=0;i<N-2;i++){
          	int r = ans.length();
			string tr = "";
			tr += ans + arr[0];
			tr += ans + arr[1] + arr[0];
			tr += ans + arr[1] + arr[1];
			tr += ans + arr[1] + arr[2];
			int x = press(tr);
			if(x == r) ans+=arr[2];
			else if(x == r+1) ans += arr[0];
			else ans += arr[1];
		}
		if(press(ans+arr[0]) == N) return ans+arr[0];
		if(press(ans+arr[1]) == N) return ans+arr[1];
		return ans+arr[2];
	}
  	assert(1==0);
	return "";
	
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...