SOLUTION INFO
C++ · main.cpp
class Solution {
public:
string to_digit(int x) {
string ret = "";
while(x) {
ret += to_string(x % 2);
x /= 2;
}
reverse(ret.begin(), ret.end());
return ret;
}
int to_digit(string S) {
int ret = 0;
for(const char &ch: S) ret = ret << 1 | (ch - '0');
return ret;
}
int maxGoodNumber(vector<int>& nums) {
vector<string> digit;
for(const int &x: nums) digit.push_back(to_digit(x));
sort(digit.begin(), digit.end(), [&](string a, string b) -> bool {
return a + b > b + a;
});
string x = "";
for(const string &s: digit) x += s;
return to_digit(x);
}
};
SOLUTION DESCRIPTION
풀이 설명
등록된 풀이 설명이 없습니다.