티스토리 뷰

반응형

https://www.acmicpc.net/problem/10162

 

10162번: 전자레인지

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

www.acmicpc.net


⊙ 문제

⊙ 입력

⊙ 출력

⊙ 예제 입출력

⊙ 알고리즘 분류

  • 수학
  • 구현
  • 그리디 알고리즘

 


 

⊙ 문제 접근 과정

 

최대한 쉽게 접근하기 위해 생각나는 대로 코드를 작성했다.

flag boolean을 만들고 T값이 10 이하로 내려가면 멈추는 while문을 만들었다.

 

만약 T값이 0이면 A, B, C 값 출력, 아니면 -1을 출력한다.

 


 

⊙ 문제 풀이

 

#include <iostream>

using namespace std;

int T;
int A=0,B=0,C=0;
bool flag=true;

int main() {
    cin >> T;

    while(flag) {
        if(T>=300) {
            A=T/300;
            T%=300;
        }else if(T>=60) {
            B=T/60;
            T%=60;
        }else if(T>=10) {
            C=T/10;
            T%=10;
        }else {
            flag=false;
        }
    }

    if(!T) {
        cout << A << " "<< B << " " << C;
    } else cout << "-1";
}

⊙ 결과

 


 

 

⊙ 마무리

 

 

기본기 중요!

 

좋아요 로그인하지 않아도 누를 수 있습니다!

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함