반응형
문제 설명
땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다.
달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러지지 않는다.
달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오.
입력
첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000)
출력
첫째 줄에 달팽이가 나무 막대를 모두 올라가는데 며칠이 걸리는지 출력한다.
예제 입력, 예제 출력
2 1 5 | 4 |
5 1 6 | 2 |
100 99 1000000000 | 999999901 |
코드 및 설명
import sys
a, b, v = map(int, sys.stdin.readline().split(" "))
if v < a:
print(1)
else:
if (v - a) % (a - b) == 0:
print((v - a) // (a - b) + 1)
else:
print((v - a) // (a - b) + 2)
이 문제는 수학 문제이다.
예제로 보면
2 1 5
(5 - 2) % (2 - 1)
3 % 1 == 0
(5 - 2) // (2 - 1)
3 // 1 == 3
3 + 1 == 4
5 1 6
(6 - 5) % (5 - 1)
1 % 4 == 1
(6 - 5) // (5 - 1)
1 // 4 == 0
0 + 2 == 2
100 99 1000000000
(1000000000 - 100) % (100 - 99)
999999900 % 1 == 0
(1000000000 - 100) // (100 - 99)
999999900 // 1 == 999999900
999999900 + 1 == 999999901
2 1 5는 4일째될 때, 5 1 6는 2일째 100 99 1000000000는 999999901일째에 정상에 도착할 수 있다.
반응형
'삽집하는 개발들 > 알고리즘' 카테고리의 다른 글
[93일차]후위 표기식 - 백준 - 1918(python - 자료구조, 스택) (1) | 2023.12.11 |
---|---|
[92일차][백준][자료구조, 스택][17299]오등큰수 (29) | 2023.12.09 |
[90일차][백준][자료구조, 스택][17298]오큰수 (6) | 2023.12.07 |
[89일차][백준][자료구조, 스택][10799]쇠막대기 (8) | 2023.12.06 |
[89일차][백준][수학, 사칙연산][1546]평균 (4) | 2023.12.06 |