Fake 코딩준비 - Day 1 [백준] 1712번 "손익분기점" (python 파이썬)

정현구·2021년 5월 1일
0

fake 코테 준비!

목록 보기
2/6

💻 1712번 "손익분기점"

👉 문제

💻 코드

-시간 초과-
a, b, c = map(int, input().split())
n = 1

def all_cost(n):
    return a + b * n


def all_sell(n):
    return c * n

while True:
    if (all_sell(n - 1) - all_cost(n - 1)) > (all_sell(n) - all_cost(n)):
        print(-1)
        break
    if all_sell(n) - all_cost(n) > 0:
        print(n)
        break
    n += 1
정답 코드
a, b, c = map(int, input().split())

if c <= b:
    print(-1)
else:
    print((a // (c-b)) + 1)

✍ 풀이

  • a = 고정 비용, b = 가변 비용, c = 판매 비용
  • 처음에는 무한 루프를 통해서 n을 증가시키면서 손익분기점이 나타나는 n을 구하려고 했음
  • 시간 초과를 만나고 나서 수학적으로 c(판매 비용이) b(가변 비용)보다 같거나 작으면 손익이 생기지 않고 손익분기점을 구할 수 있는 것을 깨닫고 다시 풀어서 해결함.

💯 결과

profile
Hi I'm a fake SW student

0개의 댓글