Submission #84831

# Submission time Handle Problem Language Result Execution time Memory
84831 2018-11-17T11:32:09 Z SirCeness Combo (IOI18_combo) C++14
5 / 100
2 ms 256 KB
#include "combo.h"
#include <bits/stdc++.h>

using namespace std;

string guess_sequence(int N) {
	
	string head = "";
	string str = "";
	str = "AB";
	if (press(str)){
		str = "A";
		if (press(str)){
			head = "A";
		} else head = "B";
	} else {
		str = "X";
		if (press(str)){
			head = "X";
		} else head = "Y";
	}
	
	string a, b, c;
	if (head[0] == 'A'){
		a = "B";
		b = "X";
		c = "Y";
	} else if (head[0] == 'B'){
		a = "A";
		b = "X";
		c = "Y";
	} else if (head[0] == 'X'){
		a = "B";
		b = "A";
		c = "Y";
	} else if (head[0] == 'Y'){
		a = "B";
		b = "X";
		c = "A";
	}
	
	for (int i = 1; i < N-1; i++){
		str = "";
		str += head;
		str += a;
		str += a;
		str += head;
		str += a;
		str += b;
		str += head;
		str += a;
		str += c;
		str += head;
		str += b;
		
		int coins = press(str);
		if (coins == i+2) head += a;
		else if (coins == i+1) head += b;
		else if (coins == i) head += c;
		else cout << "FATAL ERROR" << endl;
		
	}
	
	str = "";
	str += head;
	str += a;
	str += head;
	str += b;
	
	if (press(str) == N-1){
		head += c;
	} else {
		str = head + a;
		if (press(str) == N-1) head += b;
		else head += a;
	}
	
	return head;
}

/*
	string p = "";
	for (int i = 0; i < 4 * N; ++i) {
		p += 'A';
	}
	int coins = press(p);
	string S = "";
	for (int i = 0; i < N; ++i) {
		S += 'A';
	}
	return S;
*/
# Verdict Execution time Memory Grader output
1 Correct 2 ms 200 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Correct 2 ms 200 KB Output is correct
4 Correct 1 ms 200 KB Output is correct
5 Correct 1 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 2 ms 200 KB Output is correct
10 Correct 2 ms 200 KB Output is correct
11 Correct 2 ms 200 KB Output is correct
12 Correct 1 ms 200 KB Output is correct
13 Correct 2 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 2 ms 200 KB Output is correct
19 Correct 1 ms 200 KB Output is correct
20 Correct 2 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 220 KB Output is correct
24 Correct 1 ms 200 KB Output is correct
25 Correct 1 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 1 ms 220 KB Output is correct
34 Correct 1 ms 200 KB Output is correct
35 Correct 1 ms 200 KB Output is correct
36 Correct 1 ms 200 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 200 KB Wrong Answer: wrong guess.
2 Halted 0 ms 0 KB -