언어: python
번호: 1712
제목: 손익분기점
등급: 브론즈 2
풀이 과정:
이익이 생기려면 물건을 팔 때마다 수입이 지출보다 커야 한다. 같거나 작으면 이익이 발생하지 않는다. 따라서 가변 비용 b가 물건 가격 c보다 크거나 같으면 손익분기점이 존재하지 않아 -1을 출력한다. 손익분기점이 존재할 경우에는 (총비용/물건을 팔 때마다 생기는 이익) 초과부터 손익분기점이다. 물건의 개수는 정수이니 int(a/(c-b)+1))을 출력한다.
코드:
# 1712
a, b, c = map(int, input().split())
if b >= c:
print(-1)
else:
print(int(a/(c-b)+1))
메모:
맨 처음에는 while 문으로 문제를 풀려 했는데 -1을 출력하는 부분이 잘되지 않아 고치다 보니 위와 같은 코드를 짜게 됐다. 문제를 여러번 보면서 이해하고 while문을 쓰지 않으니 오히려 코드가 간결해졌다. 시간 복잡도가 올라가니 가능한 for 문/while 문을 쓰지 않도록 노력해야겠다.
'BOJ' 카테고리의 다른 글
[백준/BOJ] python 2839번 설탕 배달 (1) | 2023.01.25 |
---|---|
[백준/BOJ] python 2292번 벌집 (0) | 2023.01.25 |
[백준/BOJ] python 5622번 다이얼 (0) | 2023.01.25 |
[백준/BOJ] python 10818번 최소, 최대 (0) | 2023.01.25 |
[백준/BOJ] python 2562번 최댓값 (0) | 2023.01.25 |