일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 백트래킹
- 빅오 표기법
- 동적계획법
- 시간 복잡도
- 백준알고리즘
- 자바의정석연습문제
- 백준자바
- 무료개발강의
- java
- 자바
- 코딩공부
- 자바의정석연습문제풀이
- 알고리즘공부
- 자바의정석
- 자바공부
- dp
- 자바개념
- 백준
- 백준9단계
- BFS
- 개발공부
- 무료코딩강의
- 브루트포스
- ★
- 백준단계별로풀어보기
- Java개념
- dfs
- 다이나믹 프로그래밍
- 알고리즘
- ☆
- Today
- Total
더 많이 실패하기
백준 1712번 손익분기점 자바 / 백준 단계별로 풀어보기 자바 7단계 / 7. 기본 수학 1 :개발 공부 41일차 본문
개발 공부 41일차
백준 7단계 1번 문제 - 1712 손익분기점
https://www.acmicpc.net/problem/1712
1712번: 손익분기점
월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와
www.acmicpc.net
7. 기본 수학 1
(1) 백준 1712번 문제
손익분기점
문제
과정 생각해보기
고정 a
b * 생산개수
c * 판매개수(=생산개수)
a + b * 생산개수 < c * 생산개수
이때 판매개수를 구하는 문제
손익분기점이 없으면(b >= c이면) -1 출력
i의 범위를 정하기 어려우므로 for문보단 while 문이 나을 것 같다
이에 if로 나눠서 손익분기점이 있을 경우와 없는 경우를 나눠서 출력
오답
n을 int로 줬다가 틀렸다고 떠서 더 큰 숫자를 다룰 수 있도록 long으로 수정했더니
이클립스에선 답을 제대로 도출할 수 있었지만 백준에서 시간 초과가 떴다
Scanner가 아니라 다른 방법을 써야할 것 같다
전에 풀었던 15552번 문제 풀이를 보며 혼자 써보려고 노력했다
정답 인정 코드
1번
BufferedReader를 이용해서 성공!
하지만 훨씬 더 간단한 방법이 있었으니..
2번
a + b * n = c * n
a = c * n - b * n
a = n(c - b)
a / (c - b) = n
로 손익분기점이 발생되기 직전의 n값을 구할 수 있게 된다
이에 따라 n에 1을 더해주면 최초의 손익분기점이 생기는 개수를 구하게 되는 것
직후 백지 복습
코딩 보다는 수학을 이용한 문제라 오늘은 패스
혼자 구해서 뿌듯했는데 훨씬 쉬운 방법이 있어서 깨닫는 게 많다
다들 즐거운 추석연휴 보내시길~
'알고리즘 > 백준' 카테고리의 다른 글
백준 1193번 분수 자바 / 백준 단계별로 풀어보기 7단계 / 7. 기본 수학 1 (0) | 2022.09.11 |
---|---|
백준 2292번 벌집 자바 / 백준 단계별로 풀어보기 7단계 / 7. 기본 수학 1 (0) | 2022.09.11 |
백준 1316번 그룹 단어 체커 자바 / 백준 단계별로 풀어보기 자바 6단계 / 6. 문자열(6) :개발 공부 40일차(1) (0) | 2022.09.09 |
백준 2941번 크로아티아 알파벳 자바 / 백준 단계별로 풀어보기 자바 6단계 / 6. 문자열(5) :개발 공부 39일차(2) (0) | 2022.09.08 |
코딩공부 38일차: 백준 5622 다이얼 자바/ 단계별로 풀어보기 자바 6단계 / 6. 문자열(4) (0) | 2022.09.07 |