#include #include #include #include #include using namespace std; using ll=long long; #include using mint=atcoder::modint998244353; ostream& operator<<(ostream& os,mint& x){ os<>(istream& is,mint& x){ int t; is>>t; x=t; return is; } template ostream& operator<<(ostream& os,const pair& p); template istream& operator>>(istream& is,pair& p); template ostream& operator<<(ostream& os,const array& arr); template istream& operator>>(istream& is,array& arr); template ostream& operator<<(ostream& os,const vector& vec); template istream& operator>>(istream& is,vector& vec); template ostream& operator<<(ostream& os,pair& p){ os< istream& operator>>(istream& is,pair& p){ is>>p.first>>p.second; return is; } template ostream& operator<<(ostream& os,array& arr){ for(int i=0;i istream& operator>>(istream& is,array& arr){ for(int i=0;i>arr[i]; return is; } template ostream& operator<<(ostream& os,vector& vec){ for(int i=0;i istream& operator>>(istream& is,vector& vec){ for(int i=0;i>vec[i]; return is; } #include map mp; int main(){ cin.tie(nullptr); ios::sync_with_stdio(false); string player; cin>>player; int q; cin>>q; int n,m; cin>>n>>m; if(player=="Bob"){ swap(n,m); } vector> x(n); for(int i=0;i>x[i][0]; x[i][1]=i; } ranges::sort(x); int l=0,r=n; int a=0,b=m; while(l+1b-a)||(r-l==b-a&&n%2==1)){ h=(l+r)/2; c=(n+m)/2-h; }else{ c=(a+b)/2; h=(n+m)/2-c; } /* cout<>v; if((r-l>b-a)||(r-l==b-a&&n%2==1)){ if(v<=x[h][0]){ r=h; a=c; }else{ l=h; b=c; } }else{ if(x[h][0]<=v){ b=c; l=h; }else{ a=c; r=h; } } mp[c]=v; } /* cout<>v; mp[a]=v; int l3=a+1,r3=a+1; for(int i=0;i=n+m+1)cout<<"answer "<