구름 LEVEL JAVA - 통증 (난이도 2)
May 22, 2024
»
algorithm
구름 난이도 2 통증
코드
import java.io.*;
class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 통증의 수치 입력값 저장
int pain = Integer.parseInt(br.readLine());
int result = 0;
// 알약, 진통제 감소 수치 배열
int[] div = {7, 14};
// 진통제, 알약 순서대로 최대 사용!
for(int i=1;i>=0;i--){
// 통증 / 알약
result += pain / div[i];
pain %= div[i];
}
// 남은 통증 밴드로 처리
result += pain;
System.out.println(result);
}
}
풀이
통증 감소 아이템 사용 시 1(밴드) , 7(알약) , 14(진통제) 씩 감소하는데
여기서 1을 제외하고 배수이므로 14 부터 사용하면 최소한의 아이템을 사용 할 수 있다는걸 알 수 있다.
통증 수치가 14 일 때
1 X 14 : 14개
7 X 2 : 2개
14 X 1 : 1개
결과적으로, 통증 감소 수치가 높은것부터 사용시 도구를 최소로 사용한다.