※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 10312번 문제인 Lodê이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/10312
가능하다면 더 고차원인 물건을 싣는 것이 항상 이득이므로, greedy하게 고차원 물건서부터 최대한 싣는 것으로 문제를 해결할 수 있다. 이는 주어진 수의 3진수 표기와 동일하다.
아래는 제출한 소스코드이다.
#include <iostream>
#include <stack>
using namespace std;
int T;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> T;
while (T--) {
stack<int> stk;
int x; cin >> x;
while (x) {
stk.push(x % 3);
x /= 3;
}
while (!stk.empty()) {
cout << stk.top() << ' ';
stk.pop();
}
cout << '\n';
}
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 25828 // C++] Corona Virus Testing (0) | 2022.10.30 |
---|---|
[BOJ 13496 // C++] The Merchant of Venice (0) | 2022.10.30 |
[BOJ 3733 // C++] Shares (0) | 2022.10.30 |
[BOJ 25881 // C++] Electric Bill (0) | 2022.10.30 |
[BOJ 25801 // C++] Odd/Even Strings (0) | 2022.10.30 |