Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- T = int(input())
- for t in range(1, T + 1):
- print(f"Case {t}:")
- n = int(input())
- l = list(map(int, input().split()))
- mapy = {}
- for pos in l:
- mapy[pos] = 1 + (0 if pos not in mapy else mapy[pos])
- i = pos
- while (0 if i + 1 not in mapy else mapy[i + 1]) < mapy[i] - 1:
- mapy[i + 1] = 1 + (0 if i + 1 not in mapy else mapy[i + 1])
- mapy[i] -= 1
- i += 1
- i = pos
- while (0 if i - 1 not in mapy else mapy[i - 1]) < mapy[i] - 1:
- mapy[i - 1] = 1 + (0 if i - 1 not in mapy else mapy[i - 1])
- mapy[i] -= 1
- i -= 1
- keys = list(mapy.keys())
- rangee = (min(keys), max(keys))
- width = rangee[1] - rangee[0] + 1
- vals = [0] * width
- for key in range(rangee[0], rangee[1] + 1):
- vals[key - rangee[0]] = 0 if key not in mapy else mapy[key]
- height = max(vals)
- m = height
- n = width
- mat = [['.' for _ in range(n)] for _ in range(m)]
- for i in range(m):
- for j in range(n):
- if vals[j] > 0:
- mat[i][j] = 'O'
- vals[j] -= 1
- for i in range(m - 1, -1, -1):
- print(''.join(mat[i]))
Advertisement
Add Comment
Please, Sign In to add comment