자바 백준 10162번
브론즈 3
https://www.acmicpc.net/problem/10162
문제 보기
분류: 수학, 구현, 그리디 알고리즘
문제 풀기
주어진 요리 시간에서 가장 긴 시간 5분 (300초) 버튼으로 나누어 그 횟수를 정하고 그 나머지 시간을 다음 버튼으로 넘겨준다. 다음 버튼인 1분 (60초) 버튼으로 나누어 그 횟수를 정하고 나머지 시간을 마지막 버튼으로 넘겨준다. 남은 10초 C버튼으로 나누어 그 횟수를 저장한다.
A, B, C 버튼의 횟수와 각 시간을 곱해 나온시간을 초기 입력된 요리시간과 비교하여 같으면 그 버튼의 횟수를 출력하고 같지 않으면 `-1`을 출력한다.
코드 보기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
int calcT = T;
int countA = calcT / 300;
calcT %= 300;
int countB = calcT / 60;
calcT %= 60;
int countC = calcT / 10;
int totalTime = countA * 300 + countB * 60 + countC * 10;
if (totalTime == T) {
System.out.println(countA + " " + countB + " " + countC);
} else {
System.out.println("-1");
}
}
}
'공부하기 > 백준' 카테고리의 다른 글
[Java] 백준 풀기 11508 - 2+1 세일 (0) | 2023.08.15 |
---|---|
[Java] 백준 풀기 10610 - 30 (0) | 2023.08.14 |
[Java] 백준 풀기 4597 - 패리티 (0) | 2023.08.12 |
[Java] 백준 풀기 3273 - 두 수의 합 (0) | 2023.08.11 |
[Java] 백준 풀기 21921 - 블로그 (0) | 2023.08.09 |