오늘날 이동 통신의 상당 부분은 위성을 직접 바라볼 수 있는지에 달려 있다. 따라서 통신 사업자에게는 자사 서비스가 어디에서 이용 가능한지 아는 것이 매우 중요하다.
주어진 위성을 직접 바라볼 수 있는 지점, 즉 그 위성이 지평선 위에 떠 있는 지점들을 모두 찾아야 한다. 계산을 단순화하기 위해 지구는 반지름이 $6378$ km인 완전한 구라고 가정한다(산악 지형은 내년에 추가될 예정이다...). 위성은 지표면 위에 떠 있는 하나의 점으로 취급한다.
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫 줄에는 확인할 지점의 개수 $n$과 위성의 위치가 주어진다. 위성의 위치는 위도, 경도(둘 다 도 단위), 그리고 지표면으로부터의 높이(km 단위)로 표현된다.
이어지는 $n$개의 줄에는 각각 지표면 위의 한 지점이 주어진다. 각 줄은 지점의 이름(공백을 포함하지 않는, 출력 가능한 ASCII 문자 $60$개 미만의 문자열)과 그 지점의 위도, 경도(둘 다 도 단위)로 이루어진다.
입력은 $n=0$인 줄로 끝난다.
각 테스트 케이스마다 먼저 Test case k: 형태의 줄을 출력한다. 여기서 $k$는 $1$부터 시작하는 테스트 케이스 번호이다. 그다음 위성이 보이는 지점들의 이름을, 입력에 나타난 순서 그대로 한 줄에 하나씩 출력한다.
연속한 두 테스트 케이스 사이는 빈 줄 하나로 구분한다.