class Solution {
public:
    /**
     * 最大数
     * @param nums int整型vector 
     * @return string字符串
     */
    static bool cmp(string a, string b) {
        return a + b > b + a;
    }
    string solve(vector<int>& nums) {
        int len = nums.size();
        if (len == 0) {
            return "";
        }
        vector<string> str;
        for (auto n : nums) {
            str.push_back(to_string(n));
        }
        // 这是重点
        sort(str.begin(), str.end(), cmp);
        // 如果最大的都是0,说明后面都是0
        if (str[0] == "0") {
            return "0";
        }
        string ret;
        for (auto n : str) {
            ret += n;
        }
        return ret;
        
        // write code here
    }
};