펭귄들의 행진
시간 제한5초메모리 제한128 MB
각 얼음 조각을 목적지로 정했을 때, 거리 제한과 각 조각의 출발 횟수 제한을 만족시키며 모든 펭귄이 그곳으로 모일 수 있는지 최대 유량으로 판별하는 문제입니다.
문제
남극의 한 빙하 지대에 펭귄 여러 마리가 살고 있다. 각 펭귄은 바다에 떠 있는 여러 얼음 조각 위에 나뉘어 서 있다. 한 얼음 조각 위에 여러 마리의 펭귄이 있을 수도 있고, 펭귄이 한 마리도 없는 빈 얼음 조각도 있을 수 있다.
펭귄은 사회성이 높은 동물이라 모두 하나의 얼음 위에 모이고 싶어 한다. 이를 위해 얼음 조각 중 하나를 목적지로 정하고, 얼음과 얼음 사이를 점프해 이동하여 그 목적지 위로 전부 모이려고 한다. 다만 펭귄은 날 수 없기 때문에 너무 멀리 떨어진 얼음으로는 점프할 수 없다. 두 얼음 조각 사이의 유클리드 거리가 이하일 때에만 그 사이를 점프해 오갈 수 있다.
한편 지구 온난화로 얼음 조각들이 녹고 있어, 펭귄이 여러 번 밟으면 부서져 바다 아래로 가라앉는 얼음도 있다. 펭귄들은 얼음 전문가이기 때문에 각 얼음이 정확히 몇 번의 도약을 견딜 수 있는지 알고 있다. 펭귄이 어떤 얼음에서 다른 얼음으로 점프하면, 떠난(딛고 있던) 얼음은 한 번 손상되지만 착지하는 얼음은 손상되지 않는다. 즉 번 얼음에서는 최대 번까지만 점프해서 떠날 수 있다.
모든 펭귄이 한 얼음 위에 모일 수 있는 목적지 얼음은 어떤 것들인지 구하여라.
입력
첫 줄에 테스트 케이스의 수 가 주어진다 ().
각 테스트 케이스는 다음과 같이 구성된다.
- 첫 줄에 얼음 조각의 개수 ()과 펭귄이 점프할 수 있는 최대 거리 ()가 주어진다. 는 실수로 주어질 수 있다.
- 이어지는 개의 줄에 각 얼음 조각의 정보 , , , 가 주어진다.
- , : 얼음의 좌표 ()
- : 그 얼음 위에 서 있는 펭귄의 수 ()
- : 그 얼음에서 펭귄이 점프해 떠날 수 있는 최대 횟수 ()
얼음 조각의 번호는 입력에 주어진 순서대로 번부터 매긴다.
출력
각 테스트 케이스마다, 모든 펭귄이 한곳에 모일 수 있는 목적지 얼음의 번호를 오름차순으로, 공백으로 구분하여 한 줄에 출력한다. 어떤 얼음으로도 모든 펭귄이 모일 수 없으면 그 줄에 을 출력한다.