🖥️ CS/Baekjoon Algorithms

#1712번 손익분기점 (c++)

한국의 메타몽 2020. 2. 12. 01:23
#include <iostream>
using namespace std;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    
    int a,b,c = 0; // a= 고정 비용 , b = 노트북 한 대 생산가격, c = 노트북 가격
    cin >> a >> b >> c;
    
    if(b>=c)
    {
        cout << "-1";
        return 0;
    }
    
    cout << a/(c-b)+1;
    
    return 0;
}

생각해보면 굉장히 쉬운 문제.

하지만 처음에 계산식을 잘못 잡아서 30분이나 걸렸다. 

실수로 작성했던 계산식은 백준에서 기본적으로 제공하는 테스트 케이스에서 정답이었으나, 분명 허점이 존재했다. 

예를들어 테스트케이스로 a = 1 / b = 1 / c = 2를 작성하면 손익 분기점은 3이라는 괴상한 답변이 존재한다.

 

⬇️이와 같은 실수는 두 번 겪지 말자.

#include <iostream>
using namespace std;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    
    int a,b,c = 0; // a= 고정 비용 , b = 노트북 한 대 생산가격, c = 노트북 가격
    int i=0;

    cin >> a >> b >> c;
    int manu = a+b;
    
    if(b>=c)
    {
        cout << "-1";
        return 0;
    }
    
    while(manu>=0)
    {
        manu+=(b-c);
        i++;
    }
    
    cout << i;
    
    return 0;
}


'🖥️ CS > Baekjoon Algorithms' 카테고리의 다른 글

#2292번 벌집 (c++)  (0) 2020.02.12
#2839번 설탕 배달 (c++)  (0) 2020.02.12
#1316번 그룹단어체커 (c++)  (0) 2020.02.11
#1065번 한수 (c++)  (0) 2020.02.08
#4673번 셀프넘버 (c++)  (0) 2020.02.08