($n,$m)=glob<>; for$i(0..$n-1){ @b=sort{$a-$b}@a; $w=($i+1)>>1; $c=$b[$w-1]; $s=0; $v=0; $s+=$_,$v+=$_==$c for @b[0..$w-1]; if($s+$w>$m){ $a[$i]=-1; }else{ $s=0; for(@a){ if($_<$c||($_==$c&&$v-->0)){ $s+=$_+=1; }else{ $_=0; } } $a[$i]=$m-$s; } } @a=reverse@a; print"@a"