728x90
백준 1712
손익분기점
문제
월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 인건비 등 총 B만원의 가변 비용이 든다고 한다.
예를 들어 A=1,000, B=70이라고 하자. 이 경우 노트북을 한 대 생산하는 데는 총 1,070만원이 들며, 열 대 생산하는 데는 총 1,700만원이 든다.
노트북 가격이 C만원으로 책정되었다고 한다. 일반적으로 생산 대수를 늘려 가다 보면 어느 순간 총 수입(판매비용)이 총 비용(=고정비용+가변비용)보다 많아지게 된다. 최초로 총 수입이 총 비용보다 많아져 이익이 발생하는 지점을 손익분기점(BREAK-EVEN POINT)이라고 한다.
A, B, C가 주어졌을 때, 손익분기점을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 21억 이하의 자연수이다.
출력
첫 번째 줄에 손익분기점 즉 최초로 이익이 발생하는 판매량을 출력한다. 손익분기점이 존재하지 않으면 -1을 출력한다.
#백준 1712
a, b, c = map(int,input().split()) #3개 숫자 입력받음
if b >= c: #가변비용이 노트북 가격보다 크다면 -1출력
print(-1)
else:
print(a//(c-b)+1) ##총 수입 = 고정비용 + 가변비용
#N=판매량
#C*N = A+B*N
#N = A/(C-B)
#a//(c-b) 대 생산했을 때 수입과 비용이 같아지기 때문에 +1부터 수입이 많아지게 된다.
백준 2292
벌집
문제
위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오. 예를 들면, 13까지는 3개, 58까지는 5개를 지난다.
입력
첫째 줄에 N(1 ≤ N ≤ 1,000,000,000)이 주어진다.
출력
입력으로 주어진 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나는지 출력한다.
원을 그리며 규칙성을 찾아낸다. 아래 코드에 내 방식으로 상세히 적어놨다.
# 백준 2292번
# 2: 2 3 4 5 6 7 (6개) (2번)
# 3: 8 9 10 11 12 13 14 15 16 17 18 19 (12개) (3번)
# 4: 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 (18개) (4번)
# 5: 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 (24개) (5번)
# 규칙은 6의 배수로 증가
N = int(input())
count = 1 #초기 길 개수
room_last_number = 1 #초기 벌집 방 개수
while N > room_last_number: #while 문으로 입력받은 N이 벌집방 마지막 숫자보다 크다는 조건으로 반복문을 돌아줌
room_last_number += 6 * count #벌집방 마지막 숫자를 구하기 위해선 +6*count를 해줌
#ex)room_last_number = 1, count= 1
# room_last_number = 1 + 6 * 1
# room_last_number = 7
count += 1 # count = 2
#길 개수가 2인 방의 마지막 숫자는 7
print(count) #N = 58을 입력받았경우 while문을 돌다가 room_last_number가 61이 된다면
#while 문을 빠져나옴
위에 글 내용은 오류 사항이 존재할 수 있습니다!
수정 사항이 있을 시 알려주시면 감사하겠습니다.
728x90
'Python 문제풀이 > 백준(baekjoon)' 카테고리의 다른 글
7. python 기본 수학2 - 백준 1978, 백준 1929 (0) | 2022.09.15 |
---|---|
5. python 문자열 - 백준 1157, 백준 2941, 백준 1316 (1) | 2022.09.13 |
4. python 배열 - 백준 2562, 백준 8958 (0) | 2022.09.06 |
3. python 반복문 - 백준 2439, 백준 1110 (0) | 2022.09.05 |
2. python 조건문 - 백준 2884, 백준 2525 (0) | 2022.09.02 |
댓글