Submission #82435

# Submission time Handle Problem Language Result Execution time Memory
82435 2018-10-30T17:26:51 Z farukkastamonuda Combo (IOI18_combo) C++14
0 / 100
2 ms 220 KB
#include "combo.h"
#include <bits/stdc++.h>
#define fi first
#define se second
#define lo long long 
#define inf 1000000009
#define md 1000000007
#define li 100005
#define mp make_pair
#define pb push_back
#define mid (start+end)/2
using namespace std;
int n;
string y,ana;
char ilk;
string guess_sequence(int N){
	n=N;
	y="AB";
	if(press(y)>=1){
		y="A";
		if(press(y)>=1){
			ilk='A';
		}
		else ilk='B';
	}
	else{
		y='C';
		if(press(y)>=1){
			ilk='C';
		}
		else ilk='D';
	}
	ana=ana+ilk;
	for(int i=2;i<=n-1;i++){
		string t=ana;
		int uz=i-1;
		if(ilk=='A'){
			t=t+'B';
			t=t+ana+'X'+'X';
			t=t+ana+'X'+'Y';
			t=t+ana+'X'+'B';
			int sonuc=press(t);
			if(sonuc==uz){
				ana=ana+'Y';
			}
			else if(sonuc==uz+1){
				ana=ana+'B';
			}
			else ana=ana+'X';
		}
		else if(ilk=='B'){
			t=t+'A';
			t=t+ana+'X'+'X';
			t=t+ana+'X'+'Y';
			t=t+ana+'X'+'A';
			int sonuc=press(t);
			if(sonuc==uz){
				ana=ana+'Y';
			}
			else if(sonuc==uz+1){
				ana=ana+'A';
			}
			else ana=ana+'X';
		}
		else if(ilk=='X'){
			t=t+'B';
			t=t+ana+'A'+'A';
			t=t+ana+'A'+'Y';
			t=t+ana+'A'+'B';
			int sonuc=press(t);
			if(sonuc==uz){
				ana=ana+'Y';
			}
			else if(sonuc==uz+1){
				ana=ana+'B';
			}
			else ana=ana+'A';
		}
		else if(ilk=='Y'){
			t=t+'B';
			t=t+ana+'A'+'A';
			t=t+ana+'A'+'X';
			t=t+ana+'A'+'B';
			int sonuc=press(t);
			if(sonuc==uz){
				ana=ana+'X';
			}
			else if(sonuc==uz+1){
				ana=ana+'B';
			}
			else ana=ana+'A';
		}
	}
	string g;
	g.clear();
	if(ilk=='A'){
		g=ana+'B'+ana+'X';
		int sonuc=press(g);
		if(sonuc==n-1){
			ana=ana+'Y';
			return ana;
		}
		g=ana+'B';
		sonuc=press(g);
		if(sonuc==n-1){
			ana=ana+'X';
			return ana;
		}
		ana=ana+'B';
		return ana;
	}
	//
	if(ilk=='B'){
		g=ana+'A'+ana+'X';
		int sonuc=press(g);
		if(sonuc==n-1){
			ana=ana+'Y';
			return ana;
		}
		g=ana+'A';
		sonuc=press(g);
		if(sonuc==n-1){
			ana=ana+'X';
			return ana;
		}
		ana=ana+'A';
		return ana;
	}
	//
	if(ilk=='X'){
		g=ana+'B'+ana+'A';
		int sonuc=press(g);
		if(sonuc==n-1){
			ana=ana+'Y';
			return ana;
		}
		g=ana+'B';
		sonuc=press(g);
		if(sonuc==n-1){
			ana=ana+'A';
			return ana;
		}
		ana=ana+'B';
		return ana;
	}
	if(ilk=='Y'){
		g=ana+'B'+ana+'X';
		int sonuc=press(g);
		if(sonuc==n-1){
			ana=ana+'A';
			return ana;
		}
		g=ana+'B';
		sonuc=press(g);
		if(sonuc==n-1){
			ana=ana+'X';
			return ana;
		}
		ana=ana+'B';
		return ana;
	}
}

Compilation message

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:94:9: warning: control reaches end of non-void function [-Wreturn-type]
   94 |  string g;
      |         ^
# Verdict Execution time Memory Grader output
1 Correct 1 ms 200 KB Output is correct
2 Correct 2 ms 200 KB Output is correct
3 Correct 1 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 2 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 220 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 1 ms 200 KB Output is correct
19 Runtime error 1 ms 200 KB Execution failed because the return code was nonzero
20 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 200 KB Wrong Answer: wrong guess.
2 Halted 0 ms 0 KB -