Submission #1007131

#TimeUsernameProblemLanguageResultExecution timeMemory
1007131devariaotaCombo (IOI18_combo)C++17
0 / 100
1 ms344 KiB
#include <bits/stdc++.h> using namespace std; #define pii pair<ll,ll> #define REP(i,x,y) for(ll i=x;i<=y;i++) #define freeopen freopen("input.txt","r",stdin); freopen("output.txt","w",stdout); #define mod 1000000000 #define pb push_back #define mk make_pair #define ll long long #define foor(x,vec) for(auto x:vec ){cout<<x<<" ";} #define fi first #define se second #define MAXN 500069 #define lld long double #define cha ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); #define ffl fflush(stdout) #define sst string #include "combo.h" ll mvx[]={0,0,-1,1}; ll mvy[]={1,-1,0,0}; sst ts="ABXY"; int n; int press(string p); string guess_sequence(int N){ n=N; sst s="AB"; int a=press(s); sst t=""; char c='A'; if(a){ s="A"; if(press(s)){ t=t+"A"; c='A'; } else{ t=t+"B"; c='B'; } } else{ s="X"; if(press(s)){ t=t+"X"; c='X'; } else{ t=t+"Y"; c='Y'; } } vector <char> vec; for(int i=0;i<4;i++){ if(ts[i]!=c) vec.pb(ts[i]); } ll bf=1; for(int i=2;i<n;i++){ sst p=t+vec[0]+t+vec[1]+vec[0]+t+vec[1]+vec[1]+t+vec[1]+vec[2]; int val=press(p); if(val==bf){ t=t+vec[2]; } else if(val==bf+1){ t=t+vec[0]; } else{ t=t+vec[1]; } bf++; } s=t+"AB"; a=press(s); if(a==n){ s=t+"A"; if(press(s)==n){ t=t+"A"; c='A'; } else{ t=t+"B"; c='B'; } } else{ s=t+"X"; if(press(s)==n){ t=t+"X"; c='X'; } else{ t=t+"Y"; c='Y'; } } return t; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...