結果
| 問題 |
No.2671 NUPC Decompressor
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-03-13 20:51:46 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 12 ms / 2,000 ms |
| コード長 | 1,299 bytes |
| コンパイル時間 | 2,365 ms |
| コンパイル使用メモリ | 204,720 KB |
| 最終ジャッジ日時 | 2025-02-20 04:12:52 |
|
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 13 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
vector<string> gen_compression_number_vector() {
vector<string> res;
for (int i = 1; i <= 2; i++) {
for (int j = 1; j <= 2; j++) {
for (int k = 1; k <= 2; k++) {
for (int l = 1; l <= 2; l++) {
string tmp = "";
tmp.push_back(i + '0');
tmp.push_back(j + '0');
tmp.push_back(k + '0');
tmp.push_back(l + '0');
res.push_back(tmp);
}
}
}
}
return res;
}
string decompress(string compression_number) {
string nupc = "NUPC";
string tmp_decompressed = "";
for (int i = 0; i < 4; i++) {
tmp_decompressed.push_back(nupc[i]);
if (compression_number[i] == '2') {
tmp_decompressed += tmp_decompressed;
}
}
return tmp_decompressed;
}
int main() {
int K;
cin >> K;
vector<string> compression_numbers = gen_compression_number_vector();
vector<string> decompressed;
for (auto&& s : compression_numbers) {
string tmp = decompress(s);
decompressed.push_back(tmp);
}
sort(decompressed.begin(), decompressed.end());
cout << decompressed[K - 1] << endl;
}