이카's
article thumbnail
Published 2020. 10. 6. 15:57
baekjoon #1712번 손익분기점 [Python] BOJ

www.acmicpc.net/problem/1712

 

1712번: 손익분기점

월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와

www.acmicpc.net


문재해석

처음에는 for 문으로 곱하기를 해서 결과를 구하려고 했다.
하지만 몇번을 돌릴지 조건이 나와있지않았고, 더 까다롭다는걸 알았다.

그래서 고민끝에 알아낸 방법이 나누는 것이었다. (하지만 이미 많은 분들은 이렇게 푸셧다..)
뭔가 대단한걸 발견한줄 알앗는데 코드까지 똑같앗다.

조건1) b가 c보다 크거나 같으면 손익분기점이 절대 없다. 왜냐하면 a 를 더하기 때문이다... 무조건 차익에서 이득이 나야 수익이 난다!

조건2) 그렇다면 c가 b보다 큰경우의 수익이 난다는 것인데, 갯수를 어떻게 구할까 고민하다가 원래 총금액, 총갯수 등등 이런거에 나누기 하면 갯수를 구하는 공식이 많다. 
그래서 생각해 낸 방법이 a / c-b 이다 이렇게 하면 10이 나오는데, 이게 a + b*n = c * n 이 딱 일때 비용이다.
손익분기점은 저걸 넘어서야 하니 1개를 더 더해주면 된다.

1
2
3
4
5
6
7
8
9
10
a, b, c = map(int, input().split())
BREAK_EVEN_POINT = 0
 
#끝나지 않는 경우
if b >= c:
    BREAK_EVEN_POINT = -1
#댓수 구하기
else:
    BREAK_EVEN_POINT = (a // (c-b)) + 1
print(BREAK_EVEN_POINT)

코드는 간단하나 식 해석하는게 난해할수잇다.

결과 정답이다!

 

반응형
profile

이카's

@Edan Cafe ☕

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!