알고리즘/백준
[백준/c++] 10162번: 전자레인지
녕이
2022. 7. 8. 15:59
728x90
https://www.acmicpc.net/problem/10162
10162번: 전자레인지
3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은
www.acmicpc.net
버튼을 누를 때마다 시간이 동작 시간에 더해진다.
A, B, C를 적절히 눌러서 시간합이 T초가 되도록 하자.
T초를 맞출 수 없을 경우, -1 출력
A, B, C는 5분, 1분, 10초 이므로 초 단위로 모두 바꿔서 배열에 넣어줬다.
제일 큰 값부터 나눠서 해보면 쉽게 해결된다.
#include <iostream>
using namespace std;
int main(){
ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
int t;
int button[3] = {300, 60, 10};
int abc[3] = {0, 0, 0};
cin >> t;
for(int i=0; i<3; i++){
abc[i] = t / button[i];
t %= button[i];
}
if(t != 0) cout << "-1\n";
else cout << abc[0] << ' ' << abc[1] << ' ' << abc[2] << '\n';
return 0;
}
서브 테스크 문제는 처음 풀어봤는데 (아닌가.. 저번에 풀어본 거 같기도..?^^) 이렇게 결과가 나오네요
쉬운 문제긴 했지만 신기하고 쾌감이;;;;;;;ㅋ 역시 100점은 기분이 좋군요
728x90