본문으로 바로가기

백준 1712번 손익분기점 java

category Algorithm by java 2019. 8. 29. 17:21

 

 단계별로 풀어보기 수학1에 있는 문제로, 오답률이 엄청 높은 문제다.

처음에 문제를 읽어보았을때 반복문으로 임의의 숫자를 1씩 증가시켜주면서 손익분기점을 구하면 정말 쉽게 구현이 가능한 문제지만, 시간제한때문에 반복문은 사용할 수 없는 문제다. 아마 그래서 오답률이 높은것 같다.

 

여기서 A는 고정비용으로, 노트북을 아무리 많이 생산해도 변하지 않는 가격이다.

즉 A(고정비용)을 제외하면 , 노트북 하나당 얻을 수 있는 순수 이익은  C(노트북의가격) -B(가변비용) 이다.

 

즉, 순수이익이 고정비용을 넘어서는 값을 구하면 된다.

나눗셈의 몫을 구하는 연산자를 이용하여, 몫을 구하고  +1을 해주면 손익분기점이 발생하기 시작하는 값이다.

 

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

	public static void main(String[] args) throws IOException {

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());

		int A = Integer.parseInt(st.nextToken());
		int B = Integer.parseInt(st.nextToken());
		int C = Integer.parseInt(st.nextToken());
	
		if(B>=C) {
			System.out.println("-1");
		}
		
		else {
			System.out.println(A/(C-B)+1);
		}
		
	}

}

 

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