티스토리 뷰

https://www.acmicpc.net/problem/2869

 

2869번: 달팽이는 올라가고 싶다

첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000)

www.acmicpc.net

 

달팽이가 올라가고 내려가고를 며칠 반복할 때 도착하는 날짜를 구하는 것으로 도착한 날 미끄러지는 것은 계산에서 빼기 때문에 아래와 같은 식을 세울 수 있습니다.

 

(올라간 거리 * 날짜) - (내려간 거리 * (날짜 - 1)) >= 나무 높이

즉, 정상에 도달하는 날짜는 (나무 높이 - 내려간 거리) / (올라간 거리 - 내려간 거리) 로 만약 소수점이 나온다면 올림하여 출력합니다.

 

자바 코드는 다음과 같습니다.

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] input = br.readLine().split(" ");

        int a = Integer.parseInt(input[0]);
        int b = Integer.parseInt(input[1]);
        int v = Integer.parseInt(input[2]);

        int answer =  (int) Math.ceil((double)(v - b) / (a - b));
        System.out.println(answer);
    }
}
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함