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

hk님의 프로필 이미지
hk

작성한 질문수

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

10. 봉우리

dx와 dy배열 값문의드립니다

작성

·

596

0

선생님 안녕하세요 

시계방향으로 12,3,6,9으로 dx,dy배열에 넣은숫자가 

대칭이되는것같은데,, dx는 -1부터 시작하고 dy배열은 0부터 시작하는 이유를 잘 모르겠습니다. ㅠㅠ

답변 1

4

지나가다 혹시 도움이 될 수 있을까 싶어 답변드립니다.

int[] dx = {-1, 0, 1, 0};

int[] dy = {0, 1, 0, -1};

부분 말씀하시는거 같은데 12방향일 경우 '현재 위치보다 한칸 위'의 배열 값을 탐색해야 하기 때문에

행의 값은 -1 이 되고, 열의 값은 그대로 +0 으로 놔둬주면 됩니다. 

그리고 for문에서 어차피 4방향 모두 탐색해주기 때문에 탐색 방향 상관없이

int[] dx = {1, 0, -1, 0};

int[] dy = {0, 1, 0, -1};

이렇게 6(아래) -> 9(왼쪽) -> 12(위쪽) -> 3(오른쪽) 으로 탐색해주셔도 되고

굳이 시계방향이 아니더라도 

int[] dx = {0, 0, 1, -1};

int[] dy = {-1, 1, 0, 0};

이처럼 9 -> 3 -> 6 -> 12 순서로 탐색해도 무방합니다.

조금이나마 도움이 되었으면 합니다.

hk님의 프로필 이미지
hk
질문자

이해되었습니다 ! 답변너무 감사드립니다 :) 

hk님의 프로필 이미지
hk

작성한 질문수

질문하기