728x90
[백준알고리즘] 1712번: 손익분기점 -Python
https://www.acmicpc.net/problem/1712
1712번: 손익분기점
월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 인건비 등 총 B만원의 가변 비용이 든다고 한다. 예를 들어 A=1,000, B=70이라고 하자. 이 경우 노트북을 한 대 생산하는 데는 총 1,070만원이 들며, 열 대 생산하는 데는 총 1,700만원이 든다. 노트북 가격이 C만원으로 책정되었다고 한다. 일반적으로
www.acmicpc.net
통과율이 낮길래 한 번 풀어봤는데 간단하게 풀렸다.
아마 처음 하시는 분들이 직접 a+b*i < c*i 방식으로 돌리면서 여러 문제가 나오셨던 것 같다.
파이썬은 정수형에 나타낼 수 있는 제한이 따로 없어서 저러한 방법을 하더라도 크게 문제 되지는 않겠지만, 굳이 직접 for문을 돌릴 필요는 없는 문제다. 식을 다음과 같이 변경하면 가능하다.
a + b*i < c*i
a < (c - b) * i
a // (c - b) < i (단 (c - b > 0) 일 때)
import sys
a, b, c = map(int, sys.stdin.readline().split())
if c-b <= 0: print(-1)
else: print(a//(c-b) + 1)
아래는 C++로 추가 풀이한 코드이다.
계산 방법은 마찬가지로 동일하게 적용했다.
#include <iostream>
int main(void)
{
int a, b, c;
std::cin >> a >> b >> c;
if (c <= b)
{
std::cout << -1;
return 0;
}
int x = int(a / (c - b)) + 1;
std::cout << x;
}
잘못된 점이나 부족한 점 지적해주시면 감사하겠습니다
728x90
'algorithm > 백준알고리즘' 카테고리의 다른 글
[백준알고리즘] 2839번: 설탕 배달 -Python, C++ (0) | 2020.03.31 |
---|---|
[백준알고리즘] 2869번: 달팽이는 올라가고 싶다 -Python, C++ (0) | 2020.03.19 |
[백준알고리즘] 2143번: 두 배열의 합 -Python (0) | 2020.03.13 |
[백준알고리즘] 2632번: 피자판매 -Python (0) | 2020.03.13 |
[백준알고리즘] 7453번: 합이 0인 네 정수 -Python (1) | 2020.03.12 |