1 class Solution: 2 def gardenNoAdj(self, N: int, paths: 'List[List[int]]') -> 'List[int]': 3 s = dict() 4 n = len(paths) 5 for i in range(n): 6 pair = paths[i] 7 if pair[0] in s: 8 s[pair[0]].append(pair[1]) 9 else:10 s.update({pair[0]:[pair[1]]})11 if pair[1] in s.keys():12 s[pair[1]].append(pair[0])13 else:14 s.update({pair[1]:[pair[0]]})15 result = [1] * N16 for i in range(N):17 k = i + 118 if k in s:19 li = sorted(s[k])20 st = set()21 for j in range(len(li)):22 if li[j] < k:23 st.add(result[li[j]-1])24 else:25 break26 27 if len(st) == 0:28 result[i] = 129 else:30 for m in range(1,5):31 if m not in st:32 result[i] = m33 break34 return result
本周的题不好做啊,这个出题人喜欢出的题目都是我不擅长的,为了平台的良好发展,“客观公正”的给个差评吧。