r=readLn main=do x<-r;r>>=mapM putStrLn.f[f"+-"x,f"| "x] f(o:i)n=o:([1..n]>>i)++[o]
Note that non-ascii characters in the above source code will be escaped (such as \x9f).
download
return to the top page