Submission #349166

# Submission time Handle Problem Language Result Execution time Memory
349166 2021-01-16T20:52:57 Z zggf Combo (IOI18_combo) C++14
5 / 100
1 ms 256 KB
#include "combo.h"
#include <bits/stdc++.h>

using namespace std;

string guess_sequence(int N) {

	char firstLetter='X';
	if(press("X")) firstLetter = 'X';
	else if(press("Y")) firstLetter = 'Y';
	else if(press("A")) firstLetter = 'A';
	else if(press("B")) firstLetter = 'B';

	string wyn = "";
	wyn.push_back(firstLetter);
	for(int i = 1; i < N-1; i++){
		if(firstLetter=='A'){
			int tmp = press(wyn+"X"+wyn+"YX"+wyn+"YB"+wyn+"YY");
			if(tmp==(int)wyn.size()){
				wyn.push_back('B');	
			}else if(tmp==(int)wyn.size()+1){
				wyn.push_back('X');	
			}else wyn.push_back('Y');
		}
		if(firstLetter=='B'){
			int tmp = press(wyn+"X"+wyn+"YX"+wyn+"YA"+wyn+"YY");
			if(tmp==(int)wyn.size()){
				wyn.push_back('A');	
			}else if(tmp==(int)wyn.size()+1){
				wyn.push_back('X');	
			}else wyn.push_back('Y');
		}
		if(firstLetter=='X'){
			int tmp = press(wyn+"B"+wyn+"YB"+wyn+"YA"+wyn+"YY");
			if(tmp==(int)wyn.size()){
				wyn.push_back('A');	
			}else if(tmp==(int)wyn.size()+1){
				wyn.push_back('B');	
			}else wyn.push_back('Y');
		}
		if(firstLetter=='Y'){
			int tmp = press(wyn+"B"+wyn+"XB"+wyn+"XA"+wyn+"XX");
			if(tmp==(int)wyn.size()){
				wyn.push_back('A');	
			}else if(tmp==(int)wyn.size()+1){
				wyn.push_back('B');	
			}else wyn.push_back('X');
		}
	}

	char lastLetter;
	if(firstLetter!='X'&&press(wyn+"X")==N) lastLetter = 'X';
	else if(firstLetter!='Y'&&press(wyn+"Y")==N) lastLetter = 'Y';
	else if(firstLetter!='A'&&press(wyn+"A")==N) lastLetter = 'A';
	else if(firstLetter!='B'&&press(wyn+"B")==N) lastLetter = 'B';
	wyn.push_back(lastLetter);
	return wyn;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 200 KB Output is correct
2 Correct 0 ms 200 KB Output is correct
3 Correct 0 ms 200 KB Output is correct
4 Correct 1 ms 256 KB Output is correct
5 Correct 0 ms 200 KB Output is correct
6 Correct 1 ms 200 KB Output is correct
7 Correct 1 ms 200 KB Output is correct
8 Correct 1 ms 200 KB Output is correct
9 Correct 1 ms 200 KB Output is correct
10 Correct 1 ms 200 KB Output is correct
11 Correct 1 ms 200 KB Output is correct
12 Correct 1 ms 200 KB Output is correct
13 Correct 1 ms 200 KB Output is correct
14 Correct 1 ms 200 KB Output is correct
15 Correct 1 ms 200 KB Output is correct
16 Correct 1 ms 200 KB Output is correct
17 Correct 1 ms 200 KB Output is correct
18 Correct 0 ms 200 KB Output is correct
19 Correct 0 ms 200 KB Output is correct
20 Correct 1 ms 200 KB Output is correct
21 Correct 1 ms 200 KB Output is correct
22 Correct 1 ms 200 KB Output is correct
23 Correct 1 ms 200 KB Output is correct
24 Correct 1 ms 200 KB Output is correct
25 Correct 0 ms 200 KB Output is correct
26 Correct 1 ms 200 KB Output is correct
27 Correct 1 ms 200 KB Output is correct
28 Correct 1 ms 200 KB Output is correct
29 Correct 1 ms 200 KB Output is correct
30 Correct 1 ms 200 KB Output is correct
31 Correct 1 ms 200 KB Output is correct
32 Correct 1 ms 200 KB Output is correct
33 Correct 0 ms 200 KB Output is correct
34 Correct 1 ms 200 KB Output is correct
35 Correct 1 ms 200 KB Output is correct
36 Correct 0 ms 200 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 256 KB Wrong Answer: wrong guess.
2 Halted 0 ms 0 KB -