solution

$L = |S|$として$O(L^2 \log L)$。

「$T$を配置できる最も後ろの位置に配置して残りをaで埋める」だと嘘で、すべて試して最小を取る必要がある。 しかしテストが弱かったらしく前者で通る。私は気付かず前者で通した。

implementation

#!/usr/bin/perl
chop($s=<>=~y/?/./r);chop($t=<>);$a=UNRESTORABLE;$p=substr($s,$_,$m=length$t),$t=~/^$p$/?$a=substr($s,0,$_).$t.substr($s,$_+$m):0for 0..length$s;print$a=~y/./a/r