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

dev_kiiim·2022년 11월 21일
0

CODING TEST

목록 보기
1/23
post-thumbnail

백준에서 처음으로 문제를 풀어봤다.
어느 문제부터 고민이었지만, 지금 백엔드 스쿨에서 배우고 있는 수학 부분에서 골라보았다.

일단, 처음 문제를 읽고 나서는 나름 쉽게 풀 수 있을 것이라고 생각이 들었지만,, 왜인지,,

이렇게나 많은 시행착오를 겪었다,,😂


내가 처음 생각했던 접근 방식은
무한루프를 돌려서 손익분기점이 되는 부분의 값을 출력하는 것이었는데, 아무리해도 틀렸다고만 말하니 너무 속상했다,,

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

		int A = in.nextInt();
	    int B = in.nextInt();
    	int C = in.nextInt();

  	    int i = 0;

        if(C <= B){
	        System.out.println("-1");
    	}else{
        	for(;;){
            	if(A + B*i < C*i){
                	System.out.println(i);
                	break;
            	}i++;
        	}    
    	}       
	}
}    

초반에는 예외처리를 안해서 틀린건가 싶어 예외처리까지 했는데도 계속 틀려서 다른 분들의 코드를 곁눈질로 확인해보니,

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

    	int A = in.nextInt();
    	int B = in.nextInt();
    	int C = in.nextInt();

    	if(C <= B){
        	System.out.println("-1");
    	}else{
        	int i = A/(C-B);
        	System.out.println(i+1);
    	}
	}
}

이런 식으로 손익분기점에 해당하는 판매량(i) = 고정비용(A)/(판매비용(C)-가변비용(B)) 와 같이 공식을 사용하여 구현하신 분들이 많았다!
그래서 이 부분만 수정하여 제출했더니 드디어 맞았다고 해주는 것이었다,,

왜 먼저 구현했던 부분은 틀렸는지 아직도 모르겠지만,, 공부를 계속하다보면 깨닫는 순간이 오겠지,,,😅

0개의 댓글