관리 메뉴

막내의 막무가내 프로그래밍 & 일상

[알고리즘] 백준 10162 전자레인지 -그리디- 자바 본문

알고리즘/그리디

[알고리즘] 백준 10162 전자레인지 -그리디- 자바

막무가내막내 2021. 5. 11. 18:15
728x90

 

 

www.acmicpc.net/problem/10162

 

10162번: 전자레인지

3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은

www.acmicpc.net

 

백준에서 그리디 유형의 전자레인지 문제를 풀어봤습니다. ㅎㅎ

3가지의 시간초 버튼을 가진 전자레인지로 정해진 시간초(T)를 최소한의 버튼 누르는 횟수로 정확하게 요리할 수 있는지 구하는 문제였습니다. 

 

풀이는 다음과 같습니다.

 

[Java]

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int A = 300; //B, C의 배수로 만들 수 있음. 최대한 활용
        int B = 60; // 마찬가지
        int C = 10;
        int T = sc.nextInt();
        int aCnt = 0;
        int bCnt = 0;
        int cCnt = 0;
        if (T >= 300) {
            aCnt += (T / A);
            T = T % A;
        }
        if (T >= 60) {
            bCnt += (T / B);
            T = T % B;
        }
        if (T >= 10) {
            cCnt += (T / C);
            T = T % C;
        }
        if (T == 0) {
            System.out.println(aCnt + " " + bCnt + " " + cCnt);
        } else {
            System.out.println(-1);
        }
    }
}

 

 

github.com/mtjin/algorithm_practice/blob/master/%EB%B0%B1%EC%A4%80%2010162%20%EC%A0%84%EC%9E%90%EB%A0%88%EC%9D%B8%EC%A7%80%20-%EA%B7%B8%EB%A6%AC%EB%94%94-/Main.java

 

mtjin/algorithm_practice

알고리즘 문제풀이 연습. Contribute to mtjin/algorithm_practice development by creating an account on GitHub.

github.com

 

댓글과 공감은 큰 힘이 됩니다. 감사합니다. !!

 

 

 

 

728x90
Comments