5894번 - Connect the Cows
영어 실력이 부족하여 유사코 솔루션을 봤는데도 이해가 안 됩니다.
FJ는 90도 또는 180도로 회전하거나, 그대로 직진할 수 있으므로, 어떤 점 P에서 S로 가기 위해서는 x좌표가 같거나 y좌표가 같으면 된다고 생각했습니다.
아래의 인풋 예제를 보면, 모든 y값이 0이고 N=7이므로, 어느 점에서든 서로 다 이동할 수 있습니다.
따라서 7!=5040이 정답인 것 같은데, 실제 답은 272라고 하네요.
솔루션 코드를 보면 현재의 방향을 계속 저장해두는 것 같은데, 어차피 매번 상하좌우 이동할 수 있는데 왜 저장해야 하는지 모르겠습니다.
문제를 완전히 잘못 이해한 것 같은데, 어느 부분을 잘못 이해했는지 혹시 설명 부탁드려도 될까요?
"if he changes direction exactly once at the location of each cow."
즉 소를 지나칠 수는 있지만 결국에는 방문하고 회전을 해야 합니다.
@jh05013 답변 감사합니다.
방문할 때마다 회전이 필수라는 건가요?
위 예제에서 어떻게 순열을 만들든, 길이 N짜리면 모든 소를 방문하지 않나요?
네, 회전해야 합니다.
감사합니다~~~
댓글을 작성하려면 로그인해야 합니다.
ichigaya_arisa 4년 전 1
영어 실력이 부족하여 유사코 솔루션을 봤는데도 이해가 안 됩니다.
FJ는 90도 또는 180도로 회전하거나, 그대로 직진할 수 있으므로, 어떤 점 P에서 S로 가기 위해서는 x좌표가 같거나 y좌표가 같으면 된다고 생각했습니다.
아래의 인풋 예제를 보면, 모든 y값이 0이고 N=7이므로, 어느 점에서든 서로 다 이동할 수 있습니다.
따라서 7!=5040이 정답인 것 같은데, 실제 답은 272라고 하네요.
솔루션 코드를 보면 현재의 방향을 계속 저장해두는 것 같은데, 어차피 매번 상하좌우 이동할 수 있는데 왜 저장해야 하는지 모르겠습니다.
문제를 완전히 잘못 이해한 것 같은데, 어느 부분을 잘못 이해했는지 혹시 설명 부탁드려도 될까요?