반응형
문제풀이
최소버튼 동작을 구하기 위해서는 가장 가장 동작시간이 오래 걸리는 버튼을 최대로 누르면 됩니다.
가장 동작시간이 긴 A버튼 부터 남아있는 요리시간과 비교하여 버튼을 누를 수 있는 경우 해당 버튼을 누를 수 있는 최대를 구합니다.
시간을 정확히 맞출 수 없는 경우는 이 경우 버튼 C로 시간을 맞출 수 없는 경우입니다.
소스코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
final int btnTimeA = 300, btnTimeB = 60, btnTimeC = 10;
int cntBtnA = 0, cntBtnB = 0, cntBtnC = 0;
int T = Integer.parseInt(br.readLine());
if (T % btnTimeC != 0) {
System.out.println(-1);
return;
}
if (T >= btnTimeA) {
cntBtnA += T / btnTimeA;
T %= btnTimeA;
}
if (T >= btnTimeB) {
cntBtnB += T / btnTimeB;
T %= btnTimeB;
}
cntBtnC += T / btnTimeC;
T %= btnTimeC;
System.out.println(cntBtnA + " " + cntBtnB + " " + cntBtnC);
}
}
반응형
'알고리즘(Algorithm) > 백준(Baekjoon)' 카테고리의 다른 글
[백준 Baekjoon] 2522번 별 찍기 - 12 - Kotlin (0) | 2023.02.25 |
---|---|
[백준 Baekjoon] 2738번 행렬 덧셈 - Kotlin (0) | 2023.02.25 |
[백준 Baekjoon] 1268번 임시 반장 정하기 - JAVA (0) | 2022.07.12 |
[백준 Baekjoon] 2511번 카드놀이 - JAVA (0) | 2022.07.11 |
[백준 Baekjoon] 1153번 네 개의 소수 - JAVA (0) | 2022.01.25 |