반응형
Baekjoon Online Judge의 22396번 암호만들기 문제의 Python 풀이입니다.
22396번: カレー作り
各データセットについて,W0 [L] の水に R0 [g] のルウを混ぜた作りかけのカレーから,濃度 C のカレーを作るために追加する必要のあるルウの個数の最小値を 1 行で出力すること.追加す
www.acmicpc.net
💻코드
while True:
# 각 변수는 현재 녹아 있는 루의 양, 카레에 들어간 물의 양, 목표 카레 농도, 루 하나의 무게를 나타냄
dissolved_roux, water_volume, target_concentration, roux_weight = map(int, input().split())
# 목표 농도에 도달하기 위해 필요한 추가 루의 양을 계산
required_roux = target_concentration * water_volume - dissolved_roux
# 프로그램 종료 조건: 모든 입력 값이 0일 때
if dissolved_roux + water_volume + target_concentration + roux_weight == 0:
break
# 필요한 루의 최소 개수 계산 (올림 처리)
min_roux_blocks = (required_roux + roux_weight - 1) // roux_weight
print(max(0, min_roux_blocks)) # 결과가 음수가 아니도록 보장
🧠풀이
목표 농도(C)와 현재 물의 양(W0)을 곱하여 필요한 총 루의 양을 계산한다.
현재 녹아 있는 루의 양(R0)을 뺀 후, 추가로 필요한 루의 양(e)을 구한다.
필요한 추가 루의 양을 루 하나의 무게(d)로 나누어 필요한 루의 개수를 계산한다. 이 때, 정수 나눗셈의 특성을 이용하여 올림 처리한다. ((e+d-1)//d)
🤔느낀 점
카레 루는 일본식 카레를 만드는 데 사용되는 조미료 블록 또는 분말로 기본적으로 카레 소스의 기반을 형성하며, 물 또는 육수와 함께 녹여서 사용한다.

반응형
댓글