백준 1712 - 손익분기점 구하기
sol1 :
cn > a+(bn) -> 이 식이 손익분기점을 넘는 값을 구해준다까지는 생각해냈는데, 이걸 그냥 단순하게 for문 안에 if 문으로 조건을 넣어줬다. ^^...
파이썬 문법을 아직 다 익히지 못해서 그냥 a,b,c 값도 넣어줌.
이렇게하면 안됨^^!!!!
어마무시하게 틀렸닿ㅎㅎㅎㅎ
a,b,c 값을 입력받을 때
map함수를 이용하여 입력받는다.
a,b,c = map(int, input().split())
input().split()함수는 여러 개의 숫자를 입력받을 때 쓰인다. input() 함수를 통해 입력받은 수들을 split()을 통해 분리한다.
그리고, map() 함수는 이 입력받은 수들을 반복 가능(iterable)하게 저장하는데, 기본 저장형이 map(dataType, value) 이기 때문에 앞에 int를 선언한 것이다.
sol2 :
# 손익분기점이 존재하지 않으면 -1 출력, 첫째줄에 판매량 출력
a,b,c = map(int, input().split())
# c * n = a + (b * n)
if b >= c: #손익분기점을 못 넘을 경우
print(-1)
else:
print(int(a/(c-b) + 1))
b가 c보다 같거나 크면, 손익분기점을 넘지 못한다는 뜻이기 때문에 처음에 이 부분을 먼저 걸러준다.
그 후, n값을 구하기 위해서는
cn - bn = a
(c-b)n = a
n = a/(c-b) 가 되기 때문에 else 에 이 조건을 넣어주었다. 그랬더니 해결됨.
-> 주어진 예를 무조건 대입해서 이용하려 하지 말고, 어떤 수가 들어와도 조건을 충족시킬 수 있도록 하자.
Author And Source
이 문제에 관하여(백준 1712 - 손익분기점 구하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ixilixi/백준-1712-손익분기점-구하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)