알고리즘 연습

[1712] 손익분기점 - Java

밀깜 2021. 11. 6. 12:59

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

 

1712번: 손익분기점

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

www.acmicpc.net

 

1. 배운점

- 수학적 사고를 활용하면 문제를 생각보다 더 간단히 해결할 수 있다.

 

2. 개선할 점

- 다양한 방식의 풀이법을 고려해보는 태도

 

3. 궁금한 점

 

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

public class N_1712_손익분기점 {

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

		// import java.io.BufferedReader
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

		// 고정비, 가변비, 가격 입력받기
		String [] numbers = br.readLine().split(" ");

		int fixedCost = Integer.parseInt(numbers[0]);
		int addedCost = Integer.parseInt(numbers[1]);
		int price = Integer.parseInt(numbers[2]);

		// 손익분기점 계산하기
		double breakEvenPoint = 0; // count가 int의 범위 넘어가는 경우 고려
		int marginalBenefit = price - addedCost;

		// 1. 손익분기점을 넘어설 가능성이 없는 경우
		if (price <= addedCost) {
			System.out.println(-1);
		} 
		// 2. 손익분기점 넘길 수 있는 경우
		else {
			breakEvenPoint = (fixedCost / marginalBenefit) + 1;
			// (고정비 / 한계편익) + 1 
			System.out.println((int)breakEvenPoint);
		}
	}
}