#1324
Silver II
튕기는 부메랑
시간 제한
1s
메모리 제한
512MB
제출
11
정답
9
맞힌 사람
9
정답 비율
81.8%

문제

ANA 롤 내전에서 원거리 딜러를 맡은 혁준이는 시비르를 골랐다. 시비르의 주특기는 튕기는 부메랑(W) 공격을 통해 적 미니언(몬스터) 무리를 연쇄적으로 타격하여 빠르게 제거할 수 있다는 것이다.

치열한 교전을 치르던 혁준이는 급박한 상황 속에서 대충 눈앞에 보이는 미니언 중 아무거나 하나를 타격해놓고 곧바로 귀환을 누르기 시작했다.

현재 2차원 평면 격자 위에 NN마리의 적 미니언이 존재한다. 각 미니언은 11부터 NN까지 순서대로 번호가 매겨져 있다. 혁준이가 최초로 타격한 미니언을 시작으로, 부메랑은 다음과 같은 규칙에 따라 미니언들 사이를 튕기며 피해를 준다.

  1. 타격 및 처치: 부메랑에 맞은 미니언은 즉시 처치되며 맵에서 사라진다. (즉, 한 번 맞은 미니언에게 다시 튕기지 않는다.)
  2. 튕기는 조건: 부메랑은 방금 처치한 미니언의 위치를 기준으로, 남은 미니언들 중 가장 가까운 미니언에게 튕겨 날아간다. 만약 가장 가까운 거리에 있는 미니언이 여러 마리라면, 번호가 더 작은 미니언으로 튕긴다.
  3. 사거리 제한: 단, 튕겨 날아갈 다음 미니언과의 거리가 사거리 RR이하일 때만 튕길 수 있다. RR보다 멀리 떨어져 있으면 부메랑은 즉시 공격이 종료되고, 그자리에서 소멸한다. (거리는 유클리드 거리 (x1x2)2+(y1y2)2\sqrt{(x_1-x_2)^2 + (y_1-y_2)^2}를 사용한다.)

대충 스킬을 던져놓고 상점에 갈 생각에 신난 혁준이를 위해, 이 부메랑이 소멸하기 전까지 총 몇 마리의 미니언을 처치하게 될지 계산해 주자.

시비르의 직접 공격의 사거리는 무한하다.

입력

첫째 줄에 미니언의 수 NN과 부메랑의 최대 튕김 사거리 RR이 공백으로 구분되어 주어진다. (1N1,0001 \le N \le 1,000; 1R10,0001 \le R \le 10,000)

둘째 줄부터 NN개의 줄에 걸쳐 ii번 줄에는 ii번 미니언의 위치 좌표 x,yx, y가 공백으로 구분되어 주어진다. ( 10,000x,y10,000-10,000 \le x, y \le 10,000)

마지막 줄에는 혁준이가 최초로 타격한 미니언의 번호 KK가 주어진다. ( 1KN1 \le K \le N)

모든 미니언의 위치는 서로 다르며 입력으로 주어지는 수는 모두 정수다.

출력

첫째 줄에 한 번의 스킬 사용으로 처치할 수 있는 총 미니언의 수를 출력한다.

예제 입력 1

5 5
0 0
0 4
3 4
3 10
7 4
1

예제 출력 1

4

(0, 0)을 첫 타겟으로 지정하면, 거리가 4인 (0, 4)로 튕긴다. 그 후 거리가 3인 (3, 4)로 튕기고, 다시 거리가 4인 (7, 4)로 튕긴다. (3, 10)은 (7, 4)와의 거리가 7.21로 사거리 5를 초과하므로 튕기지 못한다. 따라서 총 4마리를 처치할 수 있다.

예제 입력 2

5 2
0 0
1 1 
2 2
3 3
4 4
2

예제 출력 2

2

(1, 1) 미니언은 (0, 0) 미니언과의 거리와 (2, 2) 미니언과의 거리가 서로 같다. 거리가 동률일 땐 먼저 입력 받은 미니언 부터 처치해야 하므로 (0, 0) 미니언을 처치하고, 부메랑은 (2, 2) 미니언에 닿지 못하고 소멸한다.

문제를 만든 사람
박종현
알고리즘 분류
코드 제출

코드를 제출하려면 로그인이 필요합니다.

로그인
내 제출
제출 내역이 없습니다.
맞은 사람
#순위사용자언어시간메모리코드 길이
7376🥇
Flying_Spaghetti_Monster
C++1ms1216KB977B
7518🥈
Fine_Tuning
C++18ms1212KB1784B
8275🥉
박종현
PyPy49ms57472KB918B
77504
코요태
PyPy51ms57508KB540B
80285
나여
Java63ms37832KB2037B
84426
안우진
Python99ms8804KB696B
78387
Team_Choi
PyPy139ms64068KB678B
82358
이일우
PyPy139ms64248KB678B
79769
진하김
Java206ms45100KB2280B
난이도 투표
Silver II3명 투표· 11일 전
로그인 후 AC 받으면 투표할 수 있습니다.
전체 제출
#사용자문제결과언어시간메모리코드 길이제출 시간
8442
맞았습니다
Python99ms8804KB696B2026. 05. 26. 11:23
8441
틀렸습니다
Python--603B2026. 05. 26. 11:20
8275
맞았습니다
PyPy49ms57472KB918B2026. 05. 25. 14:38
8235
맞았습니다
PyPy139ms64248KB678B2026. 05. 25. 11:13