바위 뚫는중

[BOJ] 백준 1712 손익분기점 Python3 본문

Algorithms

[BOJ] 백준 1712 손익분기점 Python3

devran 2022. 8. 22. 17:34
반응형

코딩테스트 공부 시작.

어디서부터 해야하는지 몰라서 백준 "단계별로 풀어보기"를 진행중이다.

코딩테스트라는 것에 정말 문외한이라,, 완전 기초부터 시작중이라는 상태를 감안하여 매일 생각하고 푸는것을 목표로 진행중이다.

코테를 처음 공부하는 입장에서 '이거아닌가?' 싶은것을 위주로 기록해보려고 한다.

 

 

처음에 잘못 생각했던 풀이

a, b, c = map(int,input().split())
n = 0
true = 1

while true:
    n = n+1
    real_price = a + (b*n)
    sell_price = c * n
    
    if real_price > sell_price:
        continue
    
    else:
        break 
    
print(n+1)

손익분기점에 도달할 수 없는 상황을 생각하지 못했고, 쓸데없는 반복문을 통해 시간초과를 달성한 말도안되는 반복문+조건문의 조합.

나름대로 수학적으로 풀어보려고 했는데, 간단한게 답이라는 교훈을 얻음.

 

a, b, c = map(int, input().split())
sol=0
if b>=c:
    print(-1)
else:
    sol = int(a/(c-b))
    print(sol+1)

 

구글의 도움으로 다시 작성한 코드. 맞았습니다!

아주 간단하게 풀 수 있는 정말 쉬운 문제였다.

애초에 가변비용이 판매비용보다 크다면 -1이 나오는것이 당연하다. 문제에서 먼저 제외할 부분을 제외하는 것이 아주 중요한듯.

이를 먼저 정의해주고, 가변비용이 판매비용보다 작은 경우엔 대체 몇대를 팔아야 이득이야~?는 그냥

전체비용/(판매비용-가변비용) 으로 쉽게 구할 수 있다.. 

 

 

근데 백준문제 정답은 어디서 보는건지 모르겠다.

맞았다고 나오면 맞았다고 생각하면 되는건지, 아니면 진짜 정답과 세부적인 것들이 유사해야하는 건지?

반응형