백준 1712번: 손익분기점
📌 문제
문제
월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 인건비 등 총 B만원의 가변 비용이 든다고 한다.
예를 들어 A=1,000, B=70이라고 하자. 이 경우 노트북을 한 대 생산하는 데는 총 1,070만원이 들며, 열 대 생산하는 데는 총 1,700만원이 든다.
노트북 가격이 C만원으로 책정되었다고 한다. 일반적으로 생산 대수를 늘려 가다 보면 어느 순간 총 수입(판매비용)이 총 비용(=고정비용+가변비용)보다 많아지게 된다. 최초로 총 수입이 총 비용보다 많아져 이익이 발생하는 지점을 손익분기점(BREAK-EVEN POINT)이라고 한다.
A, B, C가 주어졌을 때, 손익분기점을 구하는 프로그램을 작성하시오.
예시
(입력)
1000 70 170
(출력)
11
(입력)
3 2 1
(출력)
-1
📌 코드
코드
❗ 시간초과
import sys
input = sys.stdin.readline
a, b, c = map(int, input().split())
x = 0
if c-b > 0 :
while True :
x += 1
if a < (c-b)*x :
break
print(x)
else :
print("-1")
#시간초과
접근
- 아무생각없이 1을 계속 증가시키는
while
반복문을 썼더니 시간초과..
👉 더 단순하게 접근하기로 했다.
- 소수가 나올 수도 있으니 math.floor()
로 아예 다 내림한 후 +1
재 작성한 코드
import sys
import math
input = sys.stdin.readline
a, b, c = map(float, input().split())
if c-b > 0 :
result = a / (c-b)
print(math.floor(result)+1)
else :
print("-1")
Author And Source
이 문제에 관하여(백준 1712번: 손익분기점), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@ryong9rrr/백준-1712번-손익분기점
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
문제
월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 인건비 등 총 B만원의 가변 비용이 든다고 한다.
예를 들어 A=1,000, B=70이라고 하자. 이 경우 노트북을 한 대 생산하는 데는 총 1,070만원이 들며, 열 대 생산하는 데는 총 1,700만원이 든다.
노트북 가격이 C만원으로 책정되었다고 한다. 일반적으로 생산 대수를 늘려 가다 보면 어느 순간 총 수입(판매비용)이 총 비용(=고정비용+가변비용)보다 많아지게 된다. 최초로 총 수입이 총 비용보다 많아져 이익이 발생하는 지점을 손익분기점(BREAK-EVEN POINT)이라고 한다.
A, B, C가 주어졌을 때, 손익분기점을 구하는 프로그램을 작성하시오.
(입력)
1000 70 170
(출력)
11
(입력)
3 2 1
(출력)
-1
코드
❗ 시간초과
import sys
input = sys.stdin.readline
a, b, c = map(int, input().split())
x = 0
if c-b > 0 :
while True :
x += 1
if a < (c-b)*x :
break
print(x)
else :
print("-1")
#시간초과
접근
- 아무생각없이 1을 계속 증가시키는
while
반복문을 썼더니 시간초과..
👉 더 단순하게 접근하기로 했다.
- 소수가 나올 수도 있으니math.floor()
로 아예 다 내림한 후+1
재 작성한 코드
import sys
import math
input = sys.stdin.readline
a, b, c = map(float, input().split())
if c-b > 0 :
result = a / (c-b)
print(math.floor(result)+1)
else :
print("-1")
Author And Source
이 문제에 관하여(백준 1712번: 손익분기점), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ryong9rrr/백준-1712번-손익분기점저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)