#ifndef INCLUDED_MAIN #define INCLUDED_MAIN #include __FILE__ using namespace nskr; int main(void){ int t; cin >> t; for(;t--;){ string r,s; cin >> r >> s; int k; cin >> k; if(s == "Warong"){ int i=0; int q=0; for(char& c : r){ if(i=k){ if(c=='?') c='W'; } i++; } } cout << r << "\n"; }else{ if(r.size() == 1){ cout << "A\n"; continue; } int i; bool a=true, w=true; rep(i,k){ if(r[i] != 'A') a=false; } if(a){ for(char& c : r){ if(c == '?') c='A'; } } cout << r << "\n"; // if(a) -> XにWが含まれてはならない // if(w) -> 最初のK文字が全てAであってはならない // if(!a && !w) -> どうにもならない } } } #else #include using namespace std; using ll = long long; using ld= long double; #define rep(i,n) for(i=0;i<(n);i++) #define all(a) a.begin(), a.end() #define rall(a) a.rbegin(), a.rend() namespace nskr{ struct unionfind{ //unionfind - union by size, 経路圧縮 vector pr, sz; unionfind(int n){ pr.resize(n); sz.resize(n,1); for(int i=0;i dist(a,b); return dist(gen); } #endif