"나"는 좌표 (0.0)에서 시작을 하구요. 랜덤으로 형성된 도시 좌표를 모두 1번씩 방문하고 제자리(0,0)으로 '최단거리'로 돌아오는 코드를 짜야 하는데.
외판원 문제(Traveling Salesman Problem)이 이 문제를 해결하기에 적합할 것 같거든요. 그래서 나름 책이다 구글이다 찾아보고 있는데 생각만큼 녹록치가 않습니다.
일반적으로 설명하고 있는 외판원 문제는 저런 좌표가 아니라 a, b, c, d 같은 점으로 표현하고 있어서. x축과 y축으로 위치를 나타내는 좌표를 외판원 문제에 어떻게 적용하고 이걸 어떻게 코드로 구체적으로 구현해야 할 지 감이 서질 않습니다..
질문하시는 분은 x,y 좌표를 점 a, b, c, d에 어떻게 매핑시키는지와 같은 기초적인 질문을 하고 계시는데 댓글들은 어째 산으로 가는 답변같은.. ㅋ
간단히 점 a = 좌표 (x,y)로 표현합니다.
점 a와 b의 거리는 (x_a, y_a) 좌표와 (x_b, y_b) 좌표를 이용해서 구하면 되고요.
두 점 사이의 거리를 구하는 방법은 수학 책 찾아 보시거나 검색 한번 해 보면 나오고요.
나머지는 salesman problem 적용하면 될 겁니다.
이라 검색하면 엄청난게 나오는데 뭐가 더 필요한가요?