Submission #857074

#TimeUsernameProblemLanguageResultExecution timeMemory
857074alicanyazCombo (IOI18_combo)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp> // Common file
#include <ext/pb_ds/tree_policy.hpp> // Including tree_order_statistics_node_update
#include <ext/pb_ds/detail/standard_policies.hpp>
#define xc3(x) (x*(x-1)*(x-2)/6)
#define xc2(x) ((x)*((x)-1)/2)
#define abs(x) ((x)>0?(x):-((x)))
#define min(x,y) ((x)>(y)?(y):(x))
//#define debug 1
using namespace std;
using namespace __gnu_pbds;
//void FILEREAD(){freopen("text_input.txt","r",stdin);freopen("output.txt","w",stdout);}
#define ll long long
#define ull unsigned long long
#define pi pair<int,int>
#define pll pair<long long,long long>
#define pli pair<long long,int>
#define pil pair<int,long long>
#define vi vector<int>
#define vll vector<long long>
#define vpi vector<pair<int,int>>
#define vpll vector<pair<long long,long long>>
#define vvi vector<vector<int>>
#define vvll vector<vector<long long>>
#define vvpi vector<vector<pair<int,int>>>
#define vvpll vector<vector<pair<long,long>>>
#define vec vector
#define pr pair
#define fi first
#define se second
#define fr(i,j) for(int i=0;i<j;i++)
#define testcase(x) int x;cin>>x;while(x--)solve()
#define vecinp(v) for(auto &in_vx:v)cin>>in_vx
#define pb push_back
typedef tree<ll,null_type,less<int>,rb_tree_tag,tree_order_statistics_node_update> ordered_Set;
ordered_Set os;
#define MAX 99999997
#define MOD 92182
#define maxM 1000005

string guess_sentence(int N){
	string K = "";
	#define sz K.size()
	char inital = '#';
	// find the inital one
	int r = press("AB");if(r)inital = (press("A")==1?'A':'B');else inital = (press("X")==1?'X':'Y');
	K += inital;
	char C1='B',C2='X',C3='Y';
	if(inital == 'B')C1='A';if(inital == 'X')C2='A';if(inital == 'Y')C3='A';
	// find the middle ones
	for(int i=1;i<N-1;i++){
		string qs="";
		// K+X+FILL(X) + K+X+FILL(Y) + K+X+FILL(B) + K+Y
		qs+=K;qs+=C1;qs+=C1;
		qs+=K;qs+=C1;qs+=C2;
		qs+=K;qs+=C1;qs+=C3;
		qs+=K;qs+=C2;
		int r = press(qs);
		if(r == sz)K+=C3;
		else if(r == sz+1)K+=C2;
		else K+=C1;
	}
	// find the last one
	string qs = "";
	qs+=K;qs+=C1;
	qs+=K;qs+=C2;
	int r = press(qs);
	if(r == sz+1){
		qs = K;qs+=C1;
		r = press(qs);
		if(r == sz+1)K+=C1;
		else K+=C2;
	}
	else{
		K+=C3;
	}
	return K;
}
/*
int main(){
    int N,K; N = 11; K = 12;
    cin>>N>>K;
    int H[N-1][2];
    int L[N-1];
    for(int i=0;i<N-1;i++){
        cin >> H[i][0] >> H[i][1] >> L[i];
    }
    cout << best_path(N,K,H,L);
}*/

Compilation message (stderr)

combo.cpp: In function 'std::string guess_sentence(int)':
combo.cpp:46:10: error: 'press' was not declared in this scope
   46 |  int r = press("AB");if(r)inital = (press("A")==1?'A':'B');else inital = (press("X")==1?'X':'Y');
      |          ^~~~~
combo.cpp:49:2: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
   49 |  if(inital == 'B')C1='A';if(inital == 'X')C2='A';if(inital == 'Y')C3='A';
      |  ^~
combo.cpp:49:26: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
   49 |  if(inital == 'B')C1='A';if(inital == 'X')C2='A';if(inital == 'Y')C3='A';
      |                          ^~
combo.cpp:59:8: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   59 |   if(r == sz)K+=C3;
      |        ^
combo.cpp:60:13: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   60 |   else if(r == sz+1)K+=C2;
      |           ~~^~~~~~~
combo.cpp:67:6: error: redeclaration of 'int r'
   67 |  int r = press(qs);
      |      ^
combo.cpp:46:6: note: 'int r' previously declared here
   46 |  int r = press("AB");if(r)inital = (press("A")==1?'A':'B');else inital = (press("X")==1?'X':'Y');
      |      ^
combo.cpp:68:7: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   68 |  if(r == sz+1){
      |     ~~^~~~~~~
combo.cpp:71:8: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   71 |   if(r == sz+1)K+=C1;
      |      ~~^~~~~~~