Submission #1732051


Source Code Expand

#include <bits/stdc++.h>
#define REP(i,a,b) for(int i=(a);i<(b);i++)
#define RREP(i,a,b) for(int i=(a);i>=(b);i--)
typedef long long ll; typedef long double ld;
using namespace std;
const int INF=1e9, MOD=1e9+7, around[]={0,1,1,-1,-1,0,-1,1,0,0};
const ld PI=abs(acos(-1));
string s,w;
 
int main(){
	cin >> s >> w;
	
	bool f=true;
	REP(i,0,s.size()) if(s[i]=='?'){f=false; break;}
	if(f){cout << s << endl; return 0;}
	
	string t;
	REP(i,0,w.size()-1) t+='?';
	
	set<string> st;
	REP(i,0,s.size()){
		bool f=true;
		REP(j,0,w.size()) if(s[i+j]!='?' and s[i+j]!=w[j]) f=false;
		
		if(f){
			string a;
			a+=s.substr(0,i);
			a+=w;
			a+=s.substr(i+w.size(),s.size());
			
			REP(i,0,a.size()) if(a[i]=='?') a[i]='a';
			st.insert(a);
		}
	}
	
	if(st.size()){
		for(auto s:st){cout << s << endl; break;}
	}else{
		cout << "UNRESTORABLE" << endl;
	}
	
	return 0;
}

Submission Info

Submission Time
Task C - Dubious Document 2
User ecasdqina
Language C++14 (GCC 5.4.1)
Score 300
Code Size 907 Byte
Status AC
Exec Time 1 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 2
AC × 14
Set Name Test Cases
Sample s1.txt, s2.txt
All in01.txt, in02.txt, in03.txt, in04.txt, in05.txt, in06.txt, in07.txt, in08.txt, in09.txt, in10.txt, in11.txt, in12.txt, s1.txt, s2.txt
Case Name Status Exec Time Memory
in01.txt AC 1 ms 256 KB
in02.txt AC 1 ms 256 KB
in03.txt AC 1 ms 256 KB
in04.txt AC 1 ms 256 KB
in05.txt AC 1 ms 256 KB
in06.txt AC 1 ms 256 KB
in07.txt AC 1 ms 256 KB
in08.txt AC 1 ms 256 KB
in09.txt AC 1 ms 256 KB
in10.txt AC 1 ms 256 KB
in11.txt AC 1 ms 256 KB
in12.txt AC 1 ms 256 KB
s1.txt AC 1 ms 256 KB
s2.txt AC 1 ms 256 KB