인프런 커뮤니티 질문&답변

이승우님의 프로필 이미지
이승우

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

12. 경로탐색(DFS)

안녕하세요! 12번 경로탐색(DFS) 관해 질문 드립니다.

작성

·

249

0

강의 너무나 잘 듣고 있습니다.

해당 강의에서, 정점을 가지고 for문을 돌 때 방문 체크를 해주었는데, 저처럼 DFS 함수 진입시 정점 방문을 해주는 코드는 맞지 않는 코드인가요?? 정답은 나옵니다 6!

import java.util.Scanner;

public class 경로탐색_인접행렬 {
    static int answer = 0, n,m;
    static int[][] graph;
    static boolean[] check;


    static void DFS(int v){
        check[v] = true;
        if (v == n) answer++;

        for (int i = 1; i < graph[v].length; i++){
            if(graph[v][i] == 1 && !check[i]){
                DFS(i);
                check[i] = false;
            }
        }
    }



    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        check = new boolean[n + 1];
        graph = new int[n + 1][n + 1];
        for (int i = 0; i < m; i++){
            int x = sc.nextInt();
            int y = sc.nextInt();
            graph[x][y] =  1;
        }
        DFS(1);
        System.out.println(answer);
    }
}

답변 1

0

안녕하세요!

제 질문에 답변많이 해주셨는데

강의를 보니까 제가 문제를 잘못 이해하고 있었네요..ㅠㅠ

질문을 삭제해서 감사인사 드리려고 남껴요!

이승우님의 프로필 이미지
이승우

작성한 질문수

질문하기