Submission #1230709

#TimeUsernameProblemLanguageResultExecution timeMemory
1230709riddlesCombo (IOI18_combo)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef map<ll, ll> mp; typedef pair<ll, ll> pll; typedef queue<ll> qi; typedef vector<ll> vi; typedef vector<bool> vb; typedef vector <vi> vvi; typedef vector <pll> vpl; typedef vector <string> vs; #define YES cout<<"YES\n" #define Yes cout<<"Yes\n" #define NO cout<<"NO\n" #define No cout<<"No\n" #define F first #define S second #define pb push_back #define all(x) begin(x), end(x) void setIO(string name = "") { ios_base::sync_with_stdio(0); cin.tie(0); if ((ll)(name.size())) { freopen((name + ".in").c_str(), "r", stdin); freopen((name + ".out").c_str(), "w", stdout); } } ll go(){ ll q=press("AB"); if(q>=1){ q=press("A"); if(q==1) return 0; else return 1; }else{ q=press("X"); if(q==1) return 2; else return 3; } } string guess_sequence(ll n){ string ans=""; vector<char> idx={'A', 'B', 'X', 'Y'}; ll a=go(); ll q=n-2; ans+=idx[a]; ll i=1; if(idx[a]=='A'){ while(q--){ string test=""; test+=ans; test+='B'; test+=ans; test+='XY'; test+=ans; test+='XB'; test+=ans; test+='XX'; ll k=press(test); if(k==i) ans+='Y'; else if(k==i+1) ans+='B'; else ans+='X'; i++; } } if(idx[a]=='B'){ while(q--){ string test=""; test+=ans; test+='A'; test+=ans; test+='XY'; test+=ans; test+='XA'; test+=ans; test+='XX'; ll k=press(test); if(k==i) ans+='Y'; else if(k==i+1) ans+='A'; else ans+='X'; i++; } } if(idx[a]=='X'){ while(q--){ string test=""; test+=ans; test+='B'; test+=ans; test+='AY'; test+=ans; test+='AB'; test+=ans; test+='AA'; ll k=press(test); if(k==i) ans+='Y'; else if(k==i+1) ans+='B'; else ans+='A'; i++; } } if(idx[a]=='Y'){ while(q--){ string test=""; test+=ans; test+='B'; test+=ans; test+='XA'; test+=ans; test+='XB'; test+=ans; test+='XX'; ll k=press(test); if(k==i) ans+='A'; else if(k==i+1) ans+='B'; else ans+='X'; i++; } } return ans; }

Compilation message (stderr)

combo.cpp:56:19: warning: multi-character character constant [-Wmultichar]
   56 |             test+='XY';
      |                   ^~~~
combo.cpp:58:19: warning: multi-character character constant [-Wmultichar]
   58 |             test+='XB';
      |                   ^~~~
combo.cpp:60:19: warning: multi-character character constant [-Wmultichar]
   60 |             test+='XX';
      |                   ^~~~
combo.cpp:74:19: warning: multi-character character constant [-Wmultichar]
   74 |             test+='XY';
      |                   ^~~~
combo.cpp:76:19: warning: multi-character character constant [-Wmultichar]
   76 |             test+='XA';
      |                   ^~~~
combo.cpp:78:19: warning: multi-character character constant [-Wmultichar]
   78 |             test+='XX';
      |                   ^~~~
combo.cpp:92:19: warning: multi-character character constant [-Wmultichar]
   92 |             test+='AY';
      |                   ^~~~
combo.cpp:94:19: warning: multi-character character constant [-Wmultichar]
   94 |             test+='AB';
      |                   ^~~~
combo.cpp:96:19: warning: multi-character character constant [-Wmultichar]
   96 |             test+='AA';
      |                   ^~~~
combo.cpp:110:19: warning: multi-character character constant [-Wmultichar]
  110 |             test+='XA';
      |                   ^~~~
combo.cpp:112:19: warning: multi-character character constant [-Wmultichar]
  112 |             test+='XB';
      |                   ^~~~
combo.cpp:114:19: warning: multi-character character constant [-Wmultichar]
  114 |             test+='XX';
      |                   ^~~~
combo.cpp: In function 'll go()':
combo.cpp:31:10: error: 'press' was not declared in this scope
   31 |     ll q=press("AB");
      |          ^~~~~
combo.cpp: In function 'std::string guess_sequence(ll)':
combo.cpp:56:19: warning: overflow in conversion from 'int' to 'char' changes value from '22617' to ''Y'' [-Woverflow]
   56 |             test+='XY';
      |                   ^~~~
combo.cpp:58:19: warning: overflow in conversion from 'int' to 'char' changes value from '22594' to ''B'' [-Woverflow]
   58 |             test+='XB';
      |                   ^~~~
combo.cpp:60:19: warning: overflow in conversion from 'int' to 'char' changes value from '22616' to ''X'' [-Woverflow]
   60 |             test+='XX';
      |                   ^~~~
combo.cpp:61:18: error: 'press' was not declared in this scope
   61 |             ll k=press(test);
      |                  ^~~~~
combo.cpp:74:19: warning: overflow in conversion from 'int' to 'char' changes value from '22617' to ''Y'' [-Woverflow]
   74 |             test+='XY';
      |                   ^~~~
combo.cpp:76:19: warning: overflow in conversion from 'int' to 'char' changes value from '22593' to ''A'' [-Woverflow]
   76 |             test+='XA';
      |                   ^~~~
combo.cpp:78:19: warning: overflow in conversion from 'int' to 'char' changes value from '22616' to ''X'' [-Woverflow]
   78 |             test+='XX';
      |                   ^~~~
combo.cpp:79:18: error: 'press' was not declared in this scope
   79 |             ll k=press(test);
      |                  ^~~~~
combo.cpp:92:19: warning: overflow in conversion from 'int' to 'char' changes value from '16729' to ''Y'' [-Woverflow]
   92 |             test+='AY';
      |                   ^~~~
combo.cpp:94:19: warning: overflow in conversion from 'int' to 'char' changes value from '16706' to ''B'' [-Woverflow]
   94 |             test+='AB';
      |                   ^~~~
combo.cpp:96:19: warning: overflow in conversion from 'int' to 'char' changes value from '16705' to ''A'' [-Woverflow]
   96 |             test+='AA';
      |                   ^~~~
combo.cpp:97:18: error: 'press' was not declared in this scope
   97 |             ll k=press(test);
      |                  ^~~~~
combo.cpp:110:19: warning: overflow in conversion from 'int' to 'char' changes value from '22593' to ''A'' [-Woverflow]
  110 |             test+='XA';
      |                   ^~~~
combo.cpp:112:19: warning: overflow in conversion from 'int' to 'char' changes value from '22594' to ''B'' [-Woverflow]
  112 |             test+='XB';
      |                   ^~~~
combo.cpp:114:19: warning: overflow in conversion from 'int' to 'char' changes value from '22616' to ''X'' [-Woverflow]
  114 |             test+='XX';
      |                   ^~~~
combo.cpp:115:18: error: 'press' was not declared in this scope
  115 |             ll k=press(test);
      |                  ^~~~~
combo.cpp: In function 'void setIO(std::string)':
combo.cpp:25:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   25 |         freopen((name + ".in").c_str(), "r", stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
combo.cpp:26:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   26 |         freopen((name + ".out").c_str(), "w", stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~