From 82b1a86f0356e45870c7919f86bf6f846d69c691 Mon Sep 17 00:00:00 2001 From: Yash <75321458+Yashwanth137@users.noreply.github.com> Date: Sat, 30 Nov 2024 22:38:12 +0530 Subject: [PATCH] Update README.md --- .../2097.Valid Arrangement of Pairs/README.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/solution/2000-2099/2097.Valid Arrangement of Pairs/README.md b/solution/2000-2099/2097.Valid Arrangement of Pairs/README.md index 1fa6c8e20ed4e..ae3cdc696f5b7 100644 --- a/solution/2000-2099/2097.Valid Arrangement of Pairs/README.md +++ b/solution/2000-2099/2097.Valid Arrangement of Pairs/README.md @@ -89,6 +89,32 @@ end1 = 1 == 1 = start2 #### Python3 ```python +class Solution: + def validArrangement(self, pairs): + graph = defaultdict(deque) + degree = defaultdict(int) + + for u, v in pairs: + graph[u].append(v) + degree[u] += 1 + degree[v] -= 1 + + start = pairs[0][0] + for node in graph: + if degree[node] > 0: + start = node + break + + path = [] + + def traverse(node): + while graph[node]: + traverse(graph[node].popleft()) + path.append(node) + + traverse(start) + path.reverse() + return [[path[i], path[i + 1]] for i in range(len(path) - 1)] ```