($n,$x)=glob<>; $y+=$_ for @a=glob<>; @i=sort{$a[$b]<=>$a[$a]}0..$n-1; sub f{ if(++$c>1e6){ $h{0}=''; for$v(@a){ $y-=$v; %h=map{$_+$y>=$x?($_,$h{$_}.'x'):(),$_+$v<=$x?($_+$v,$h{$_}.'o'):()}keys%h } print$h{$x}||No; exit; } my($i,$s,$t,$p)=@_; if($i==$n){ print$h; exit; } my$v=$a[$i[$i]]; if($s-$v>=0&&$v!=$p){ substr($h,$i[$i],1,'o'); f($i+1,$s-$v,$t); } if($t-$v>=0){ substr($h,$i[$i],1,'x'); f($i+1,$s,$t-$v,$v); } } $h=$"x$n; f(0,$x,$y-$x)if$y>=$x; print"No"