fork download
  1. def j(r):R=range;Z=zip;B=r+r+2;P,M='+-';X='| ';q=list(Z(R(0,B-1,2),R(B-1,0,-2)));L=r+1;A=2+r;print('\n'.join([X*w+P+M*v+P+' |'*w for v,w in Z(R(4*L*4-3,0,-4),R(4*L))]+[X*g+P*o+M*k+u+M*k+P*o+' |'*-~g for g,o,k,u in Z(list(R(4*L-A,0,-1))+list(R(4*L-A)),[0]+[1]*(3*r+2),[0]+list(R(1,4*L,2))+list(R(4*L+1,11*r,2)),[M*y+'+ '+X*b+P+M*y for y,b in q]+[M*B+P+M*B]+[M*y+'+ '+X*b+P+M*y for y,b in q[::-1]+q[1:]])]+[' '*(8*r+6)+P+M*(8*r+7)+P]))
  2. j(int(input()))
Success #stdin #stdout 0.02s 9936KB
stdin
3
stdout
+-------------------------------------------------------------+
| +---------------------------------------------------------+ |
| | +-----------------------------------------------------+ | |
| | | +-------------------------------------------------+ | | |
| | | | +---------------------------------------------+ | | | |
| | | | | +-----------------------------------------+ | | | | |
| | | | | | +-------------------------------------+ | | | | | |
| | | | | | | +---------------------------------+ | | | | | | |
| | | | | | | | +-----------------------------+ | | | | | | | |
| | | | | | | | | +-------------------------+ | | | | | | | | |
| | | | | | | | | | +---------------------+ | | | | | | | | | |
| | | | | | | | | | | +-----------------+ | | | | | | | | | | |
| | | | | | | | | | | | +-------------+ | | | | | | | | | | | |
| | | | | | | | | | | | | +---------+ | | | | | | | | | | | | |
| | | | | | | | | | | | | | +-----+ | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | +-+ | | | | | | | | | | | | | | |
| | | | | | | | | | | + | | | | | | | + | | | | | | | | | | | |
| | | | | | | | | | +---+ | | | | | +---+ | | | | | | | | | | |
| | | | | | | | | +-------+ | | | +-------+ | | | | | | | | | |
| | | | | | | | +-----------+ | +-----------+ | | | | | | | | |
| | | | | | | +---------------+---------------+ | | | | | | | |
| | | | | | +---------------+ | +---------------+ | | | | | | |
| | | | | +---------------+ | | | +---------------+ | | | | | |
| | | | +---------------+ | | | | | +---------------+ | | | | |
| | | +---------------+ | | | | | | | +---------------+ | | | |
| | +-------------------+ | | | | | +-------------------+ | | |
| +-----------------------+ | | | +-----------------------+ | |
+---------------------------+ | +---------------------------+ |
                              +-------------------------------+