기하2 [python] 1002. 터렛 문제 출처 1002. 터렛 풀이 d(distance): 터렛1과 터렛2의 거리 r1, r2: 터렛1과 터렛2 부터 마린까지의 거리 ip(intersection point): 마린이 존재할 수 있는 경우의 수 풀이에 사용하는 용어는 위와같이 정의하고, 두 터렛의 좌표와 마린과의 거리가 주어졌을때 마린이 존재할 수 있는 위치의 경우는 다음과 같다. d가 (r1+r2) 보다 클때 두 터렛간의 교점이 없음 d가 (r1+r2)와 같을때 두 터렛간의 교점이 하나 존재 d가 (r1+r2) 보다 작을때 두 터렛의 좌표가 같고 마린까지의 거리도 같을 때 한 터렛의 좌표가 다른 터렛의 반경 내부에 있으며 교점이 두 개 존재 한 터렛의 좌표가 다른 터렛의 반경 내부에 있으며 교점이 두 개 존재 한 터렛의 좌표가 다른 터렛의.. 2019. 6. 26. [python] 1004. 어린 왕자 문제 출처 1004. 어린 왕자 풀이 A 포인트부터 B 포인트까지 이동할때 거쳐야 할 최소의 행성계 진입/이탈 횟수를 구한다. 행성계의 좌표와 반지름이 주어지므로 A, B포인트와 행성계 와의 거리를 통해 행성계 궤도에 진입 여부를 확인한다. 이때 최소의 횟수를 구하는 것 이므로 진입/이탈 둘 다 하는 경우는 없다고 볼 수 있다. 따라서 최소의 행성계 진입을 통해 이동가능한 경우는 다음과 같다. 한 개 이상의 행성계 내부에 A, B 포인트 모두 존재 한 개의 행성계 내부에는 A, B 포인트 중 하나만 존재 A, B 포인트 모두 행성계 외부에 존재 위 경우를 고려해서 코드를 짜면 다음과 같다. # 특정 포인트가 행성계 내부에 존재 유무 확인 def inCircle(planet, x, y): c1, c2, r.. 2019. 6. 25. 이전 1 다음