Submission #83469

#TimeUsernameProblemLanguageResultExecution timeMemory
83469charlies_mooSpirale (COCI18_spirale)Pypy 2
80 / 80
570 ms21004 KiB
n, m, k = map(int, raw_input().split()) s = max(m,n) inf = (s*2)**3+s arr = [[inf for i in range(m+2)] for i in range(n+2)] def print_arr(): for i in range(1, n+1): for j in range(1, m+1): print arr[i][j], print def spiral(x, y, d): if d == 0: d = 1 else: d = -1 num = 1 arr[x][y] = num times = 1 length = 1 t = -1 while times < n * m: for i in range(1,length+1): num += 1 x += t if x <= 0 or x >= n + 1 or y <= 0 or y >= m + 1: continue if num < arr[x][y]: arr[x][y] = num times += 1 t = 0 - t for i in range(1,length+1): num += 1 y += t*d if x <= 0 or x >= n + 1 or y <= 0 or y >= m + 1: continue if num < arr[x][y]: arr[x][y] = num times += 1 length += 1 for i in range(k): x, y, k = map(int, raw_input().split()) spiral(x, y, k) print_arr()
#Verdict Execution timeMemoryGrader output
Fetching results...