본문 바로가기
코딩공부/백준 (java)

[백준 1712] 손익분기점 (java)

by CodingKwon 2021. 7. 25.

문제 링크

https://www.acmicpc.net/problem/1712

 

1712번: 손익분기점

월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와

www.acmicpc.net

 

나의 코드 (java)

import java.util.Scanner;

public class Main {
    public static void main (String[] args) {
        Scanner sc = new Scanner(System.in);

        // 고정 비용
        int a = sc.nextInt();
        // 가변 비용
        int b = sc.nextInt();
        // 수입
        int c = sc.nextInt();

        if (b >= c){
            // 손익분기점이 존재하지 않는 경우
            System.out.println(-1);
        } else {
            // 손익분기점을 넘는 경우
            System.out.println(a/(c-b)+1);
        }
    }
}

 

저는 처음에 이 문제의 접근 방법으로 변수를 두 개 두어 하나의 변수는 가변 비용을 계속 증가시키고 다른 변수는 수입을 증가시켜 결과를 찾아봤습니다.

 

하지만 굉장히 많은 연산을 요구하여 실행시간이 말도 안 되게 길게 나오는 문제가 있어서 위처럼 코드를 수정했습니다.

 

a/(c-b)+1이라는 식을 세워서 연산과정을 줄였습니다.

댓글