shkoma   10년 전

제가 해당 문제를 풀려고 시도한 알고리즘은 아래와 같습니다.

시작 점 또는 끝 점이 특정 원에 들어가 있다면 반드시 해당 원을 지나야한다.

따라서 각각의 원의 중심으로부터 시작점 과 끝점(각각) 사이의 거리를 구한 후 이를 반지름과 비교합니다.

반지름 보다 작다면 점은 해당 원안에 있다고 생각됩니다.

예외처리로, 시작점과 끝점이 같은 원에 있으면 안되기에 이를 예외 처리합니다.

코드는 아래와 같습니다. 예시로 제시된 입력과 출력값은 잘 나옵니다.

하지만 제출시 틀렸다고 나옵니다. 

또 다른 예외처리가 필요한건가요? 무엇이 잘못된 것이지 궁금합니다.

chatterboy   10년 전

checkTheDistance()에서 매 반복문이 수행되기 전에 inStart와 inFinish를 false로 초기화 해줘야 하는 것 같습니다.

shkoma   10년 전

답변 감사드립니다. 답변해주신대로 진행하니 결과가 나오네요. 감사합니다.

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