#steps=11000 #steps=100 steps=gets.to_i board=Hash.new(-1) x=0 y=0 dx=-1 dy=0 steps.times{ color=board[[x,y]]*-1 board[[x,y]]*=-1 dx,dy=-dy,dx dx,dy=dx*color,dy*color x+=dx y+=dy } keys=board.keys.select{|key|board[key]==1} x1,x2=keys.map{|x,y|x}.minmax y1,y2=keys.map{|x,y|y}.minmax out=y1.upto(y2).map{' '*(x2-x1+1)} keys.map{|x,y|out[y-y1][x-x1]=?#} puts out#.map(&:rstrip)