1799번 - 비숍
다른분의 블로그 코드에서 가져온 코드인데요
출처 : https://pangsblog.tistory.com/84
저 isAble 함수가 아예 이해가 안돼요 ㅠㅠ
퀸을 대각선이면 놓을수 없는데 기존의 좌표에서 dy[i]+y , dx[i]+x; 이게
dx 랑 dy가 기존 좌표에서 대각선 좌표값을 얻을수 있는 인덱스 인데
왜 저걸 돌리는지 모르겠고
12-13번째 줄에 한번 더 왜 더해주는 건가요? 설명좀 부탁드립니다 ㅠ..
한 칸씩 전진하면서 그곳이 방문되었는지 검사하는겁니다.(비숍이 놓였는지?)
비숍이 있으면 대각선에 놓을 수 없기 때문입니다.
dy = 1, dx = -1이고 현재 좌표가 5,5일 때
(6, 4)
(7, 3)
(8, 2) 순으로 이동하면서 여기에 비숍이 있는가를 검사합니다.
아하 visited 가 true 이면 방문을 했으니 false로 반환하는 것 맞죠?
12-13번째 줄은 무엇을 의미하는지 여쭤봐도 될까요?
이미 yy와 xx는 한 차례 더해진 상태인데 한번 더 더하는 이유가 정말 모르겠습니다
인접한 곳만 검사하는게 아니라 그쪽 방향으로 쭉 검사하려는겁니다.
답변 감사합니다 !!!
댓글을 작성하려면 로그인해야 합니다.
le_effort 4년 전
다른분의 블로그 코드에서 가져온 코드인데요
출처 : https://pangsblog.tistory.com/84
저 isAble 함수가 아예 이해가 안돼요 ㅠㅠ
퀸을 대각선이면 놓을수 없는데 기존의 좌표에서 dy[i]+y , dx[i]+x; 이게
dx 랑 dy가 기존 좌표에서 대각선 좌표값을 얻을수 있는 인덱스 인데
왜 저걸 돌리는지 모르겠고
12-13번째 줄에 한번 더 왜 더해주는 건가요? 설명좀 부탁드립니다 ㅠ..