class Solution:
def dfs(self, cur, visit, dp, graph):
for next in graph[cur]:
if visit[next] == False:
visit[next] = True
dp[cur] += self.dfs(next, visit, dp, graph)
return dp[cur]
def minimumFuelCost(self, roads: List[List[int]], seats: int) -> int:
n = len(roads) + 1
graph = [[] for _ in range(n)]
visit = [False for _ in range(n)]
dp = [1 for _ in range(n)]
for l, r in roads:
graph[l].append(r)
graph[r].append(l)
visit[0] = True
self.dfs(0, visit, dp, graph)
return sum([(x + seats - 1) // seats for x in dp[1:]])
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.