[Baekjoon Online Judge] 백준 1712번 손익분기점
(C++, Python)
(글쓴날 : 2020.04.07)
* Baekjoon Online Judge, 백준 1712번 문제 C++, Python 언어 풀이입니다.
* 소스 코드의 저작권은 글쓴이에게 있습니다.
백준 1712번 손익분기점
1) 문제
문제 링크 : https://www.acmicpc.net/problem/1712
2) 풀이 과정
고정 비용, 가변 비용, 판매 비용이 주어질 때 손익분기점을 넘기는 판매량을 구하는 문제입니다.
언뜻 보면 엄청 쉬운 문제이지만, 시간제한이 0.35초여서 단순 반복문으로 접근했다간 시간 초과가 발생하므로 좀 더 머리?를 쓰셔야 합니다.
저의 경우, 판매량을 x로 놓고 고정 비용 + 가변 비용 * x < 판매 비용 * x의 수식을 세워 접근했습니다.
따라서, x > 고정 비용 / 판매 비용 - 가변 비용이라는 수식이 성립하므로 반복문을 돌리지 않고 판매량을 구했으며, 손익분기점을 넘기는 판매량을 출력해야 하므로 구한 x에 1을 더해 출력했습니다.
단, x를 구하기에 앞서 가변 비용이 판매 비용보다 높거나 같을 경우 손익분기점이 존재하지 않게 되므로, 해당 경우에 -1을 출력하는 조건문을 먼저 적용해 예외 처리하여 문제를 해결했습니다.
3) 코드
* C++ 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#include <iostream>
using namespace std;
int main(void)
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int a, b, c;
cin >> a >> b >> c;
if (b >= c)
cout << -1;
else
cout << (a / (c - b)) + 1;
return 0;
}
|
* Python 코드
1
2
3
4
5
6
7
8
|
import sys
input = sys.stdin.readline
a, b, c = map(int, input().split())
if b >= c :
print(-1)
else:
print(-a // (b - c) + 1)
|
'Deprecated' 카테고리의 다른 글
[Baekjoon Online Judge] 백준 2580번 스도쿠(C++, Python) (0) | 2020.04.10 |
---|---|
[Baekjoon Online Judge] 백준 2585번 경비행기(C++, Python) (0) | 2020.04.09 |
[Baekjoon Online Judge] 백준 1939번 중량제한(Python) (0) | 2020.04.07 |
[Baekjoon Online Judge] 백준 3079번 입국심사(Python) (0) | 2020.04.07 |
[Baekjoon Online Judge] 백준 2110번 공유기 설치(Python) (0) | 2020.04.07 |