반응형
1712_손익분기점
링크
https://www.acmicpc.net/problem/1712
풀이
손익분기점을 찾으려면 다음과 같은 식을 세울 수 있습니다.
a + b*ans < c*ans
정리해보면
a < (c-b)*ans
그럼
a/(c-b) < ans가 나오는데요.
a/(c-b)를 하면 나누어 떨어지거나, 소수점 .xxx가 나옵니다.
어떠한 경우든 상관없이 1개를 더 팔아야 하기 때문에 +1을 해줍니다.
그리고 손익분기점이 없는 경우는 b >= c인 경우입니다.
똑같이 팔거나 손해가 나면 손익분기점이 없겠죠?
코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
//1712_손익분기점 #include <cstdio>
long long a, b, c, ans;
int main() { scanf("%lld %lld %lld", &a, &b, &c);
if (b >= c) { printf("-1\n"); return 0; }
//a + b*ans < c*ans //a < (c-b)*ans //a/(c-b) < ans //딱 떨어지든 아니든 조금 부족하기 때문에 1 더해줘야함
ans = a / (c - b) + 1;
printf("%lld\n", ans);
return 0; } |
반응형
'PS > BOJ' 카테고리의 다른 글
[백준 BOJ] 2153 소수 단어 (0) | 2018.11.23 |
---|---|
[백준 BOJ] 1267 핸드폰 요금 (0) | 2018.11.22 |
[백준 BOJ] 2903 중앙 이동 알고리즘 (0) | 2018.11.20 |
[백준 BOJ] 1919 애너그램 만들기 (0) | 2018.11.19 |
[백준 BOJ][stack] 3015 오아시스 재결합 (0) | 2018.11.18 |