| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 365969 | 小林老师 | 【C4-4】粉碎数字 | C++ | 通过 | 100 | 2 MS | 260 KB | 1293 | 2025-12-06 09:44:16 |
#include <iostream> // 用于输入输出 #include <vector> // 存储数字的“盒子” #include <algorithm> // 排序的“魔法棒” #include <string> // 用来处理字符串的工具 #include <sstream> // 把数字转成字符串的“工具人” using namespace std; int main() { int n; cin >> n; vector<int> numbers; // 创建一个“数字盒子” for (int i = 0; i < n; i++) { int num; cin >> num; numbers.push_back(num); // 把数字放进数字盒子里 } // 把所有数字拆成单个数字,存入一个“数字池” vector<char> digits; for (int num : numbers) { string numberStr = to_string(num); // 把数字变成字符串 for (char ch : numberStr) { // 把每个字符(数字)放进数字池 digits.push_back(ch); } } // 把数字池从大到小排序 sort(digits.begin(), digits.end(), greater<char>()); // 用greater来从大到小排 // 把数字池中的字符拼接成一个最大数字 string maxNumber; for (char ch : digits) { maxNumber += ch; // 每个字符拼成一个大数字符串 } // 输出结果 cout << maxNumber << endl; return 0; }