Advertisement
Bad_Programist

Untitled

Dec 9th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.66 KB | None | 0 0
  1. def printpretty(x):
  2.     for row in x:
  3.         print(''.join(list(map(lambda z: ' ' * (4 - len(str(z))) + str(z), row))))
  4. def down(arr, x, h, f):
  5.     b = 0
  6.     c = 0
  7.     for i in range(h):
  8.         if arr[i][x] == '.':
  9.             arr[i][x] = i + f
  10.             b = i
  11.             c = i + f
  12.     return [b, c]
  13. def up(arr, x, h, f):
  14.     b = 0
  15.     c = 0
  16.     for i in range(h - 1, -1, -1):
  17.         if arr[i][x] == '.':
  18.             arr[i][x] = f + h - i - 1
  19.             b = i
  20.             c = f + h - i - 1
  21.     return [b, c]
  22. def right(arr, x, w, f):
  23.     b = 0
  24.     c = 0
  25.     for j in range(w):
  26.         if arr[x][j] == '.':
  27.             arr[x][j] = f + j
  28.             b = j
  29.             c = f + j
  30.     return [b, c]
  31. def left(arr, x, w, f):
  32.     b = 0
  33.     c = 0
  34.     for j in range(w - 1, -1, -1):
  35.         if arr[x][j] == '.':
  36.             arr[x][j] = f + w - j - 1
  37.             b = j
  38.             c = f + w - j - 1
  39.     return [b, c]
  40. def countt(arr, f):
  41.     s = True
  42.     for i in arr:
  43.         for j in i:
  44.             if j == f:
  45.                 s = False
  46.     return s    
  47.            
  48.            
  49.            
  50.            
  51.            
  52.            
  53.            
  54.            
  55.            
  56. h, w = input().split()
  57. h, w = int(h), int(w)
  58. a = [['.' for j in range(w)] for i in range(h)]
  59. #right(a, 0, w, 1)
  60. #down(a, 4, h, 5)
  61. #left(a, 3, w, 8)
  62. #up(a, 0, h, 12)
  63. #right(a, 1, w, 14)
  64. #down(a, 3, h, 16)
  65. #left(a, 2, w, 17)
  66.  
  67. i = 0
  68. j = 0
  69. num = 1
  70.  
  71.  
  72. while countt(a, '.') == False:
  73.     j, num = right(a, i, w, num - j)
  74.     i, num = down(a, j, h, num - i)
  75.     j, num = left(a, i, w, num - w + j + 1)
  76.     i, num = up(a, j, h, num - h + i + 1)
  77.    
  78.    
  79. printpretty(a)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement