개발자 톡

연습문제 톡 [HSAT 6회 정기 코딩 인증평가 기출] 출퇴근길

출퇴근길 테스트케이스중 4개가 런타임에러 뜹니다 ㅜㅜ

등록일
2023-05-12 18:48:38
조회수
635
작성자
sungwon4728

풀이 영상 보고 풀었는데 어디가 문제인가요?


import sys
input = sys.stdin.readline
sys.setrecursionlimit(10**9)

def dfs(s,g,visit):
    if visit[s]==1:
        return
    visit[s]=1
    for x in g[s]:
        dfs(x,g,visit)

    

n,m = map(int,input().split())
graph=[[] for _ in range(n+1)]
graph_r=[[] for _ in range(n+1)]
for _ in range(m):
    a,b=map(int,input().split())
    graph[a].append(b)
    graph_r[b].append(a)
s,e = map(int,input().split())

s_in = [0]*(n+1)
dfs(s,graph_r,s_in)

s_out = [0]*(n+1)
s_out[e]=1
dfs(s,graph,s_out)

e_in = [0]*(n+1)
dfs(e,graph_r,e_in)

e_out = [0]*(n+1)
e_out[s]=1
dfs(e,graph,e_out)

ans=0
for i in range(n+1):
    if s_in[i] and s_out[i] and e_in[i] and e_out[i]:
        ans+=1
print(ans-2)



#[hsat_6회_정기_코딩_인증평가_기출]_출퇴근길
#python

이 카테고리의 톡 더보기