[BOJ 1069] 집으로

View as PDF

Submit solution

Points: 3
Time limit: 2.0s
Memory limit: 128M

Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

은진이는 지금 (X, Y)에 있고, (0, 0)에 있는 집으로 가능한 빨리 가려고 한다. 이동할 수 있는 방법은 다음 두 가지이다.</p>

첫 번째 방법은 걷는것이다. 걸을 때는 1초에 1만큼 움직인다. 두 번째 방법은 점프하는 것이다. 점프를 하게 되면, T초에 D만큼 움직인다. 점프는 일직선으로만 할 수 있고, 정확하게 D칸만 움직일 수 있다.

위의 두 가지 방법을 이용해서 집에 돌아오는데 걸리는 시간의 최솟값을 구하는 프로그램을 작성하시오. 꼭 한 가지 방법만 사용해야 되는것이 아니고, 두 가지 방법을 적절히 조합해서 가장 빠른 시간을 구하는 것이다.

입력 형식

첫째 줄에 네 정수 X, Y, D, T가 주어진다.

출력 형식

첫째 줄에 집에 돌아오는데 걸리는 시간의 최솟값을 출력한다. 절대/상대 오차는 10-9까지 허용한다.

예제 입력 1

6 8 5 3

예제 출력 1

6.0

예제 입력 2

3 4 6 3

예제 출력 2

4.0

예제 입력 3

318 445 1200 800

예제 출력 3

546.9451526432975

예제 입력 4

400 300 150 10

예제 출력 4

40.0

예제 입력 5

6 8 3 2

예제 출력 5

7.0

예제 입력 6

10 10 1000 5

예제 출력 6

10.0

Comments

There are no comments at the moment.