아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

돌게임과 쿼리

시간 제한1.5초메모리 제한512 MB

요약
각 질의 X T N마다 턴별로 가져갈 수 있는 돌의 범위가 정해진 돌게임에서, 남은 돌을 최소로 하면서 턴 수가 최소가 되는 값을 구한다.
난이도

보통10점 중 7점

유형
수학, 그리디, 구현
정답자
아직 제출이 없습니다

문제

경곽이는 돌게임을 만들고, 영재에게 이 게임과 관련된 문제를 내었다. 돌게임은 구체적으로 NN개의 돌을 가져가는 게임인데, 각 턴에는 반드시 11개 이상의 돌을 가져가야 하며, II번째 턴에는 (X+I)(X+I)의 배수만큼의 돌을 가져갈 수 있다. 하지만 한 턴에 돌을 너무 많이 가져가는 것을 싫어하는 경곽이는 이 게임에 새로운 규칙을 추가했다. 구체적으로, II번째 턴에는 최대 (X+I)×T(X+I) \times T개의 돌만 가져갈 수 있다. 만약 현재 턴에서 더 이상 돌을 가져갈 수 없으면 게임이 종료된다. 영재에게 낸 문제는 다음과 같다. 게임이 종료되었을 때 남은 돌의 개수를 최소화시켜야 한다. 만약 남은 돌의 개수가 같다면, 게임이 최대한 빨리 종료되도록 해야 한다. 최선의 방법으로 게임을 진행할 때 필요한 게임의 턴 수를 구하여라. 하지만 똑똑한 영재가 이를 너무 쉽게 구하자, 화가난 경곽이는 여러 질의를 주고 답을 구하라고 하였다. 영재를 도와 문제를 해결해보자.

입력

첫 번째 줄에 쿼리의 개수 QQ가 주어진다.

다음 줄부터 쿼리에 대한 정보 XX TT NN이 순서대로 주어진다.

출력

ii번째 줄에 ii번 쿼리에서 주어진 조건의 돌게임에서 영재가 구해야 하는 답을 출력하라. 즉, 필요한 최소의 턴 수를 출력하라.

제한

  • 1≤Q≤3×1051 \leq Q \leq 3 \times 10^{5}
  • 1≤X<N≤5×1081 \leq X < N \leq 5 \times 10^{8}
  • 2≤T≤1082 \leq T \leq 10^{8}

예제1

  1. 예제 1

    입력
    1
    100 100000 10201
    
    예상 출력
    1