Programming/BOJ

백준 BaekJoon Online Judge // 1712

껨코 2021. 1. 18. 18:01

백준 알고리즘 BaekJoon Online Judge 1712번 "손익분기점" 문제입니다.

import sys
A, B, C = map(int, sys.stdin.readline().split())
if B >= C:
  print(-1)
else:
  ans = A // (C - B) + 1
  print(ans)

부등식을 활용하면 쉽게 풀 수 있는 문제다.

 

손익 분기점을 구하려면 팔은 노트북의 개수를 N 이라고 한다면

 

생산하는데 드는 비용은 A + B * N 이고 판매했을 때 얻은 수입은 C * N 이다.

 

C * N > A + B * N 이 되어야 하므로 N > A / (C - B) 를 만족하는 N을 구하면 된다.

 

B >= C 일 경우에는 N의 값이 음수가 되거나 분모가 0이 되어버리므로 그런 경우는 -1을 출력하게 한다.

 

나머지의 경우에는 정수 나눗셈으로 //을 사용하고 N > A // (C-B)에서처럼 부등호가 등호를 포함하지 않으므로 +1을 해준 후에 출력을 해준다.