Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def solve(za):
- za = [(za[i][0], za[i][1], i) for i in range(len(za))]
- za.sort(key=lambda x: x[0])
- imran = []
- c_end = 0
- j_end = 0
- for start, end, idx in za:
- if start < c_end and start < j_end:
- return "IMPOSSIBLE"
- elif start >= c_end:
- imran.append(("C", idx))
- c_end = end
- else: # elif start >= j_end:
- imran.append(("J", idx))
- j_end = end
- imran.sort(key=lambda x: x[1]) # sort according to the idx
- str_imran = ''
- for person, idx in imran:
- str_imran += person
- return str_imran
- T = int(input().strip())
- list_imran = []
- for i in range(1, T+1):
- n = int(input().strip())
- za = []
- for ni in range(n):
- interval = list(map(int, input().strip().split()))
- za.append(interval)
- imran = solve(za)
- list_imran.append(imran)
- for index in range(len(list_imran)):
- print("Case #{}: {}".format(index+1, list_imran[index]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement