더티 드라이빙
시간 제한1초메모리 제한128 MB
앞차 n대까지의 거리와 상수 p가 주어질 때, 사이에 낀 차 수를 k라 하면 모든 차 x가 p*(k+1) 이상 떨어지도록 가장 가까운 차와의 최소 간격을 구한다.
문제
다른 모든 훌륭한 운전자처럼, 당신도 주변 운전자들에게 경적을 울리고 욕을 하는 것을 즐긴다. 지금 당신은 긴 정체 행렬의 맨 뒤에 있으며, 다들 앞차와의 적절한 거리를 지키지 못한다며 씩씩거리고 있다. 그런데 정작 당신은 안전거리를 제대로 지키고 있는가?
당신은 절대로 브레이크를 밟지 않으려면, 앞에 있는 임의의 차 와의 거리를 항상 이상으로 유지해야 한다는 것을 계산해 냈다. 여기서 은 당신과 차 사이에 있는 차의 수이고, 는 당신이 지금 몰고 있는 차에 따라 정해지는 정수 상수이다.
앞에 있는 차들의 상대적인 위치는 변하지 않으므로, 당신이 조절할 수 있는 것은 바로 앞 차와의 거리뿐이다. 값과 앞에 있는 각 차까지의 현재 거리가 (임의의 순서로) 주어질 때, 절대로 브레이크를 밟지 않기 위해 바로 앞 차와 유지해야 하는 최소 거리를 구하여라.
입력
첫째 줄에 두 정수 과 가 주어진다 (, ). 각각 앞에 있는 차의 수와 감속 상수를 의미한다.
둘째 줄에 서로 다른 개의 정수가 주어지며, 이는 앞에 있는 각 차까지의 현재 거리이다. 각 거리는 구간에 속한다.
출력
절대로 브레이크를 밟지 않기 위해 바로 앞 차와 유지해야 하는 최소 거리를 정수 하나로 출력한다.