만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

볼 베어링

시간 제한1초메모리 제한128 MB

요약
외륜의 안지름, 공의 지름, 이웃한 공 사이의 최소 간격이 주어질 때 외륜 안에 들어가는 공의 최대 개수를 구한다.
난이도

쉬움10점 중 3점

유형
기하, 수학, 구현, 이분 탐색
정답자
아직 제출이 없습니다

문제

스웨덴 회사 SKF는 볼 베어링을 만든다. 볼 베어링은 구름(마찰 저감) 베어링의 두 종류 중 하나로, 다른 하나는 롤러 베어링이다.

볼 베어링의 역할은 서로 상대적으로 움직이는 두 기계 부품을 연결하여 운동에 대한 마찰 저항을 최소로 만드는 것이다. 많은 경우 한 부품은 회전하는 축이고 다른 하나는 고정된 하우징이다. 각 볼 베어링은 세 가지 주요 부분으로 이루어진다. 홈이 파인 링 모양의 궤도(race) 두 개와 여러 개의 볼이다. 볼들은 두 궤도 사이의 공간을 채우며 홈 안에서 거의 마찰 없이 구른다. 볼들은 리테이너(케이지)로 느슨하게 고정되어 서로 분리될 수 있다.

바깥 링 안에 볼을 많이 넣을수록 회전이 더 부드러워질 것이다. 그렇다면 몇 개나 넣을 수 있을까? 바깥 링의 안쪽 지름, 볼의 지름, 그리고 이웃한 볼 사이의 최소 거리가 주어진다. 바깥 링 안쪽에 들어갈 수 있는 볼의 최대 개수를 구하여라. 모든 볼은 반드시 바깥 링에 닿아야 한다.

입력

첫째 줄에 테스트 케이스의 개수인 양의 정수 nn이 주어진다. 이어지는 nn개의 줄에 각 테스트 케이스가 하나씩 주어지며, 각 줄에는 세 개의 양의 실수 DD, dd, ss가 있다. DD는 바깥 링의 안쪽 지름, dd는 볼의 지름, ss는 이웃한 볼 사이의 최소 거리이다. 모든 값은 [0.0001,500.0][0.0001, 500.0] 범위 안에 있다.

출력

각 테스트 케이스마다 한 줄에 정수 mm 하나를 출력한다. mm은 위 조건에서 볼 베어링에 들어갈 수 있는 볼의 최대 개수이다. 항상 최소 세 개의 볼이 들어갈 공간이 있다.

예제1

  1. 예제 1

    입력
    2
    20 1 0.1
    100.0 13.0 0.2
    
    예상 출력
    54
    20