($n,$k)=glob<>; $m=int($n/$k**2)*$k+int(0.999999+sqrt$n%$k**2); print$m,$/; for$y(0..$m-1){ for$x(0..$m-1){ if($n&&$a[$x]<$k&&$b[$y]<$k){ print'#'; --$n; ++$a[$x]; ++$b[$y]; }else{ print'.'; } } print$/; }