

물건 판매에 대한 손익분기점을 계산하는 문제
반복문을 사용하면 쉽게 해결이 가능하지 않을까? 라는 생각으로 접근할 확률이 굉장히 큰 문제가 아닌가 싶다.
허나 반복문을 사용하였을 때 각 A B C 값의 간격이 커지게 된다면 시간 초과에 걸릴 수 있다.
고정 비용, 가변 비용, 판매 가격을 고려하는 수학적으로 계산해야 한다.
풀이
#include <iostream>
using namespace std;
int main()
{
int a, b, c,ans;
cin >> a >> b >> c; //고정 비용, 가변 비용, 판매 금액 입력
if (b >= c)
cout << "-1"; //가변 비용이 판매 비용보다 크거나 같다면 -1을 출력
else {
ans = a / (c - b) + 1;
cout << ans;
}
}
반복문을 사용하게 된다면 보통 손익분기점을 작은 값부터 조건에 맞는 값까지 하나씩 다 돌리도록 코딩을 했을 것이라 생각된다.
그렇게 된다면 값이 커졌을 때 0 ~ N 까지 하나하나 값을 확인하게 되느라 시간 초과에 걸리는 것.
이를 해결 하기 위해서 한 번에 처리는 불가능 한 지 살펴볼 필요가 있다.
먼저 가변 비용 즉 물건을 생산하는데 드는 비용이 판매 비용보다 더 크다면 당연히 수익이 발생하지 않기 때문에 -1로 예외 처리를 하였고
수익이 발생되는 부분을 알아보기 위해서
판매 비용에서 가변 비용을 뺀 이득 값을 고정 비용 나누었다.
비유를 한다면
노트북 가격이 170만원이고 가변 비용을 70, 고정 비용을 1000으로 입력을 하였다면
노트북 가격 (170) 에서 가변 비용(70)을 뺀다면
노트북 1대를 팔았을 때 100만원이라는 차익이 생기게 된다.
2대를 팔면 200만원, 3대를 팔면 300만원...
이 부분을 이용하여
고정비용과 차익을 나누게 된다면 10이라는 값이 나오는데
여기서 10은 차익이 100만원인 노트북을 10대 팔아야 고정비용을 커버치게 된다는 뜻.
그렇다면 여기에서 나온 10이라는 값에 +1을 하게 된다면?
이제부터는 본인이 노트북 생산에 투자한 금액을 넘어선 이익이 발생하는 부분 즉 손익분기점을 구할 수 있게 된다.
1712번: 손익분기점
월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와
www.acmicpc.net
'알고리즘 > 백준' 카테고리의 다른 글
<백준> 1110번 더하기 사이클 java 문제풀이 (0) | 2022.01.05 |
---|---|
<백준> 4344번 평균은 넘겠지 C++ 문제풀이 (0) | 2021.01.26 |
<백준> 2753번 윤년 C++ 문제풀이 (0) | 2021.01.08 |
<백준> 2884번 알람시계 C++ 문제풀이 (0) | 2021.01.07 |

IT
github : https://github.com/HanSungHyeon