반응형
https://www.acmicpc.net/problem/2869
2869번: 달팽이는 올라가고 싶다
첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000)
www.acmicpc.net
달팽이가 하루동안 +n만큼 올라갈 수 있고 -m만큼 내려온다 V에 도달할 때까지 몇번 올라가야하는가.
수식때문에 애를먹었다 왜냐하면 보통(V)/(n-m)이라고 생각했지만 마지막엔 +n만큼올라가고 내려오지 않기때문에
V-M / N-M으로 해야하고 나누어 떨어지지 않을 경우 남아있을 경우이기 때문에 한번더 올라가야하기 때문에 +1을 해줘야한다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
int V = Integer.parseInt(st.nextToken());
int day = (V - B) / (A - B);
if ((V - B) % (A - B) != 0)
day++;
System.out.println(day);
}
}
반응형