문제

https://www.acmicpc.net/problem/2869
2869번: 달팽이는 올라가고 싶다
첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000)
www.acmicpc.net
문제풀이
나무 정상에 도달하면 떨어지지 않는다는것을 식으로 어떻게 표현할지 감이 올질 않았다. 단순하게 생각하면됫을것을
문제에서 제시한 그대로 올라가는 길이는 a, 떨어지는 길이는 b, 나무높이는 v로 변수를 선언하고 입력받은 세개의 수를 각각의 변수에 할당해 주었다.
나무에 도달하기 까지 걸린기간에 대한 식은 나무높이에서 마지막날에 올라간 거리를 뺴고 올라가는 길이와 떨어지는길이를 뺀 값을 나누면 값을 구할수 있었다.
이 나눈값이 소수일경우가 생겨서 자바스크립트처럼 올림에 대한 내장함수를 찾아보니
math 모듈을 이용하면 수학과 관련된 함수를 사용할수 있었다.
ceil을 이용하면 소수를 올림하는 정수를 반환하고 floor는 소수내림 반환하는 함수.
import math
a, b, v = map(int, input().split())
day = math.ceil((v-a)/(a-b)) + 1
print(day)
'알고리즘 > 백준' 카테고리의 다른 글
| [백준] 설탕배달 문제풀이 - 파이썬 (0) | 2021.12.08 |
|---|---|
| [백준] 1267번 핸드폰요금 문제풀이 - 파이썬 (0) | 2021.12.08 |
| [백준] 1964번 오각형 문제풀이 - 파이썬 (0) | 2021.12.07 |
| [백준] 1076번 저항 문제풀이 - 파이썬 (0) | 2021.12.07 |