-
1712. [Python]손익분기점Python_알고리즘/Bronze II 2023. 1. 23. 23:10
1. 문제
https://www.acmicpc.net/problem/1712
1712번: 손익분기점
월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와
www.acmicpc.net
2. 접근 방법
- 시간 제한: 0.35초
- 메모리 제한: 128MB
- 규칙 찾기
3. 파이썬 코드
A,B,C = map(int,input().split()) # 결과를 출력하기 위해서는 C-B를 빼줘야 하는데 B가 C보다 큰 경우 이득이 생길 수 없고 같으면 0 이나오기 때문에 0으로 값을 나눌 수 없어서 >= 사용 if B >= C: print(-1) else: # 이득이 나는 구조는 결국 C와 B의 차이로 A를 나눈 몫에서 +1 을 해줘야 이득이 생긴다. print(A//(C-B)+1)
4. 문제를 풀고난 후 생각
- 젤 처음에는 파는 갯수를 카운트 해주는 식으로 생각을 했고 while 문으로 무한루프를 돌렸다.
- 이 문제의 시간 제한이 0.35초로 1초도 안되는 시간이였기에 반복문으로 푸는 것이 아니란걸 생각하고 조건을 생각해봤다.
- -1의 값이 나올려면 B(노트북 생산비용)와 C(노트북 판매비용) 사이의 관계를 살펴봐야 하는 것을 깨달았다.
- C(판매비용)이 B(생산비용)이랑 같거나 작은 경우 절대 이득이 나올 수 없는 구조이고 결국엔 두 값의 차이로 A(고정비용)을 나눈 몫에서 +1 을해줘야 이득이 나는 대수를 구할 수 있는 것이였다.
5. 문제를 푸는데 도움이 되는 지식
- X