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

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

크로스컨트리 경기

면접 대비

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

요약
1분 간격으로 출발한 주자가 앞선 주자를 따라잡으면 함께 달리고 묶인 주자만 다시 출발할 때 필요한 경주 횟수를 구합니다.
난이도

보통10점 중 5점

유형
시뮬레이션, 그리디, 수학
정답자
아직 제출이 없습니다

문제

인터벌 스타트 방식으로 열리는 크로스컨트리 세계선수권에서 주최 측이 큰 실수를 했다. 코스 어디에서도 앞사람을 추월할 수 없게 만들어 버린 것이다. 어떤 선수가 자기보다 먼저 출발한 선수를 따라잡으면, 두 선수는 남은 구간을 함께 달려야 한다.

이래서는 세계 챔피언을 가릴 수 없으므로, 주최 측은 바로 앞에 아무도 없는 상태로 결승선을 통과한 선수의 기록만 인정하기로 했다. 나머지 선수는 충분히 쉰 다음 다시 경기를 치르고, 그 경기에서 기록을 정한다.

이 방식의 위험은 경기를 너무 여러 번 열어야 할 수도 있다는 점이다. 코스 길이와 참가자의 속력이 주어질 때, 경기를 몇 번 열어야 하는지 구하라.

한 경기에서 선수는 입력에 주어진 순서대로 1분 간격으로 출발한다. 다음 경기에서도 선수 사이의 상대 순서는 그대로이고 출발 시각만 다시 조정하므로, 연속한 두 선수의 출발 간격은 여전히 정확히 1분이다.

입력

첫째 줄에 테스트 케이스의 수 TT가 주어진다. 각 테스트 케이스의 첫째 줄에는 참가자 수 NN과 코스 길이 SS가 미터 단위로 주어진다. 다음 줄에는 출발 순서대로 참가자의 속력 v1,v2,…,vNv_1, v_2, \dots, v_N이 분당 미터 단위로 주어진다.

  • 0<T≤1000 < T \le 100
  • 0<N≤10000 < N \le 1000
  • 0<S≤500000 < S \le 50000
  • 0<vi<10000 < v_i < 1000
  • 입력의 모든 수는 정수다.
  • 이 문제에서 참가자는 크기가 없는 점으로 본다.
  • 참가자는 먼저 출발한 선수가 있는 지점까지 도달할 수 있지만, 그 지점을 지나갈 수는 없다.
  • 어떤 참가자의 바로 앞에 사람이 있다는 것은, 두 사람이 정확히 같은 지점에 있으면서 그 참가자가 둘 중 먼저 출발한 쪽이 아닌 경우만을 뜻한다.
  • 거리 ss, 속력 vv, 시간 tt의 관계는 s=v×ts = v \times t다.

출력

각 테스트 케이스마다 열어야 하는 경기 수를 한 줄에 하나씩 출력한다.

예제4

  1. 예제 1

    입력
    2
    5 100
    20 20 20 20 20
    4 2000
    100 200 300 350
    
    예상 출력
    1
    3
    
  2. 예제 2

    입력
    1
    1 1
    999
    
    예상 출력
    1
    
  3. 예제 3

    입력
    2
    2 20
    10 20
    2 20
    20 10
    
    예상 출력
    2
    1
    
  4. 예제 4

    입력
    2
    5 50000
    1 2 3 4 5
    10 50000
    1 2 3 4 5 6 7 8 9 10
    
    예상 출력
    5
    10