프로그램 명: koi_ladde(special judge)
제한시간: 1 초

여러 층으로 이루어진 직사각형 모양의 건물이 있다. 아래 그림 1은 5개의 층으로 이루어진 직사각형 건물의 예이다. 각 층에는 하나의 막대기가 있는데, 각 막대기의 길이는 서로 다를 수 있다. 그리고 막대기들은 시간 0 에서 시작해서 동시에 각각 일정한 속도로 왼쪽에서 오른쪽으로 혹은 오른쪽에서 왼쪽으로 움직인다. 각 막대기의 움직이는 속도는 양의 정수로 주어진다.

그림 1에서처럼 초기(시간 0)에 각 막대기는 직사각형의 왼쪽 변 또는 오른쪽 변에 닿아있다. 시간이 지남에 따라 각 막대기는 주어진 방향으로 주어진 속도로 움직이고 막대기의 양쪽 끝 중에 하나가 직사각형의 왼쪽 변 또는 오른쪽 변에 닿으면 진행하는 방향과 반대 방향으로 계속해서 움직인다.

철수(그림 1의 검정색 원)는 초기에 가장 아래층막대기 위에 위치하고 있다. 그리고 아래 조건 1)을 만족하면서 현재 막대기 위에서 움직일 수 있고, 조건 2)를 만족한다면, 위층에 있는 막대기 중 하나로 올라 갈 수 있다.

조건 2)의 예로, K=3 인 경우에 그림 1에서 철수는 시간 0 에 네 번째 층의 막대기로 올라 갈 수 있고 곧바로 가장 위층의 막대기로 올라 갈 수 있다. 따라서 시간 0 에 가장 위층에 도달하게 된다.

시간 0 의 초기 상태에서 출발해서 철수가 가장 아래층의 막대기에서 가장 위층의 막대기로 올라가는데 걸리는 최소 시간을 구하는 프로그램을 작성하시오.

입력

출력

첫째 줄에 철수가 가장 아래층 막대기에서 가장 위층 막대기로 올라가는데 걸리는 최소 시간을 출력한다. 출력 값은 반올림하여 소수점이하 다섯째자리까지 출력한다.

입출력 예

입력

5 7 2
2 1 1
1 0 1
3 1 1
1 1 1
4 0 1

출력 

0.00000

입력 

5 7 2
1 1 2
1 0 4
2 1 3
1 1 2
4 0 1

출력 

0.25000
출처:2012 지역 본선 고등 4/5
대회 풀이
[질/답] [제출 현황] [푼 후(0)]
[ 채 점 ] [홈으로]  [뒤 로]