📌문제
땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다.
달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러지지 않는다.
달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오.
입력
첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000)
출력
첫째 줄에 달팽이가 나무 막대를 모두 올라가는데 며칠이 걸리는지 출력한다.
예제 입력
2 1 5
예제 출력
4
📌답
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[] x = br.readLine().split(" ");
int up = Integer.parseInt(x[0]); //올라가유
int down = Integer.parseInt(x[1]); //내려가유
int t = Integer.parseInt(x[2]); //정상이에유
int r = up - down; //하루 올라가는 거리에유
int d = (t - up) / r + 1; //마지막 날전까지 올라가는 데 걸리는 날짜에유
if ((t - up) % r > 0) {
d++;
}
System.out.println(d);
}
}
📌코멘트
처음에 반복문으로 날짜를 찾으려했는데 시간 제한이 걸려있어서 실패가 떴다...공식을 찾고 다시 풀어서 간신히 성공...나 왜 수학 못해...?
끝까지 읽어주셔서 감사합니다 :)
Have a good day🐱
📢
1. 개발자 준비생이 공부한 내용을 정리한 글입니다. 내용에 오류가 있을 수 있습니다.
2. 위와 같은 이유로 내용에 대한 지적과 조언은 감사하게 받습니다.
3. 이 글의 내용은 계속 공부함으로써 언제든지 추가/수정 될 수 있습니다.
'Coding Test > 백준 - JAVA' 카테고리의 다른 글
백준 2501번 약수 구하기(JAVA) (1) | 2024.12.28 |
---|---|
백준 5086 배수와 약수 (JAVA) (0) | 2024.12.28 |
백준 1193번 분수찾기 (JAVA) (0) | 2024.12.27 |
백준 2292번 벌집 (JAVA) (0) | 2024.12.26 |
백준 2903번 중앙 이동 알고리즘 (JAVA) (0) | 2024.12.23 |