수학 문제
- 달팽이가 하루에 올라갈 수 있는 거리 : A - B
- 높이 V 에서 하루 올라갈 수 있는 거리를 제외한 올라갈 수 있는 거리 : V - A
- 정상에 올라가면 미끄러지지 않으므로, V-A / A-B의 값에 + 1을 해준다.
만약 나눈 값이 0.X를 대비해 Math.ceil() 함수를 사용하여 올림을 해준다.- 시간초과에 민감한 문제이므로 출력시 BufferedWriter 이용
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer stringTokenizer = new StringTokenizer(bufferedReader.readLine());
Double A = Double.valueOf(stringTokenizer.nextToken());
Double B = Double.valueOf(stringTokenizer.nextToken());
Double V = Double.valueOf(stringTokenizer.nextToken());
int day = (int) (Math.ceil((V - A) / (A - B)) + 1);
bufferedWriter.write(String.valueOf(day));
bufferedWriter.flush();
bufferedWriter.close();
bufferedReader.close();
}
}