• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    해결됨

반례를 못찾겠습니다.

24.02.21 17:09 작성 조회수 113

1

http://boj.kr/7b036ef3742940cd860da4b66f630c0b

 

이론에서 배웠던 코드를 이용해서 구현했는데 어디서 틀렸는지 못찾겠습니다.

답변 1

답변을 작성해보세요.

1

안녕하세요 ㅎㅎ

초기화 및 범위 부분이 틀렸습니다.

    for(int i=0; i<4; i++) {
        int nx = x + dx[i];
        int ny = y + dy[i];
        
        if(nx < 0 || ny < 0 || nx >= m || ny >= n)

이부분과

 

    for(int i=0; i<t; i++) {
        cin >> m >> n >> k;
        cnt=0; 
        memset(adj, 0, sizeof(adj)); 
        memset(visited, 0, sizeof(visited)); 

이렇게 한번 바꿔보시겠어요?



또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


donald010님의 프로필

donald010

질문자

2024.02.21

visited 배열 초기화를 빼먹었네요

if(nx < 0 || ny < 0 || nx >= m || ny >= n) 

오버플로 범위는 맨날 헷갈리네요..

알려주셔서 감사합니다.