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

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

랩 경주

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

요약
가장 빠른 소가 트랙 길이 C에서 L바퀴를 마칠 때까지 각 소가 다른 소를 앞지르는 사건의 총 횟수를 센다.
난이도

보통10점 중 7점

유형
정렬, 수학, 이분 탐색, 배열
정답자
아직 제출이 없습니다

문제

농부 John은 소 경주를 새로운 스포츠로 삼을 수 있을지 알아보려고 한다. 그는 NN마리의 소(1≤N≤100,0001 \le N \le 100{,}000)를 둘레가 CC인 원형 트랙에서 LL바퀴 도는 경주에 출전시킨다. 모든 소는 같은 지점에서 동시에 출발하며, 각자 일정한 속도로 달린다. 가장 빠른 소가 총 거리 L⋅CL \cdot C를 모두 달린 순간 경주가 끝난다.

경주 도중 한 소가 다른 소를 앞지르는 일이 생긴다. 추월 사건은 순서쌍 (x,y)(x, y)와 시각 tt(경주가 끝나는 시각 이하)로 정의되며, 시각 tt에 소 xx가 소 yy를 앞질러 앞서 나가는 것을 뜻한다. 경주 전체 동안 일어나는 추월 사건의 총 횟수를 구하여라.

입력

  • 첫째 줄: 공백으로 구분된 세 정수 NN, LL, CC (1≤L,C≤25,0001 \le L, C \le 25{,}000).
  • 둘째 줄부터 N+1N+1째 줄까지: i+1i+1째 줄에는 소 ii의 속도가 주어지며, 11 이상 1,000,0001{,}000{,}000 이하의 정수이다.

출력

  • 경주 전체 동안 발생한 추월 사건의 총 횟수를 한 줄에 출력한다.

설명

소 4마리가 둘레 100인 트랙을 2바퀴 돌고, 속도가 각각 20, 100, 70, 1인 경우를 생각해 보자. 경주는 가장 빠른 소(속도 100)가 2바퀴를 마칠 때까지 이어진다. 그 동안 추월 사건은 모두 4번 일어난다. 속도 100인 소가 속도 20인 소와 속도 1인 소를 앞지르고, 속도 70인 소도 속도 20인 소와 속도 1인 소를 앞지른다.

예제1

  1. 예제 1

    입력
    4 2 100
    20
    100
    70
    1
    
    예상 출력
    4