From f400d36dc542426b0069ac3d9e6d8cb393f4d127 Mon Sep 17 00:00:00 2001 From: choiminji Date: Sat, 29 Aug 2026 18:05:12 +0900 Subject: [PATCH] Day31 --- .../636.py" | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 "leetcode3/\354\265\234\353\257\274\354\247\200/636.py" diff --git "a/leetcode3/\354\265\234\353\257\274\354\247\200/636.py" "b/leetcode3/\354\265\234\353\257\274\354\247\200/636.py" new file mode 100644 index 00000000..52995464 --- /dev/null +++ "b/leetcode3/\354\265\234\353\257\274\354\247\200/636.py" @@ -0,0 +1,23 @@ +class Solution: + def exclusiveTime(self, n: int, logs: List[str]) -> List[int]: + res = [0] * n + stack = [] + prev_time = 0 + + for log in logs: + fn_id, event, timestamp = log.split(":") + fn_id = int(fn_id) + curr_time = int(timestamp) + + if event == "start": + if stack: + res[stack[-1]] += curr_time - prev_time + + stack.append(fn_id) + prev_time = curr_time + else: + res[stack.pop()] += curr_time - prev_time + 1 + prev_time = curr_time + 1 + + return res + \ No newline at end of file