totok682   4년 전

제가 짠 코드의 알고리즘은 다음과 같습니다.

  1. 매 테스트 케이스마다 InitArray()함수를 통해 배추가 심어져있는 배열 (cabbage)와 방문을 확인하는 배열 (visit)을 초기화합니다.
  2. 2중 반복문을 통해 배추가 심어져있는지 방문하는지 확인하는 함수 IsCabbage()를 호출합니다.
  3. 방문하지 않았고 배추가 심어져있다면 좌, 우, 아래에도 IsCabbage() 함수를 호출하여 탐색합니다(DFS)
  4. IsCabbage가 True일때 Count를 올리고(붙어있는 배추가 있어도 한번만 Count됨) 마지막에 Count의 숫자를 출력합니다.

그리고 제가 시도한 테스트 케이스는 코드 아래에 첨부하겠습니다!

도와주시면 감사하겠습니다 ㅠㅠ

dyk777   4년 전

위쪽은 보지 않는 이유가 있나요?

totok682   4년 전

dyk777


0~n-1 순으로 열과 행을 차례대로 간다는 생각에 위는 탐색할 필요가 없다고 생각했었는데.. 아니였네요 ㅠㅠ

이렇게 생긴 배추밭이 있으면 오류가 나겠군요, 아래 반례도 첨부하겠습니다 감사합니다 ^ㅡ^

<배추밭 모양>

0000

0101

0111

cdt416z   4년 전

감사합니다!! 저도 똑같은 오류 있었네요 ㅋㅋㅋㅋㅋㅋㅋ

댓글을 작성하려면 로그인해야 합니다.