Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<vector>
- #include<string>
- using namespace std;
- bool lex_compare(const int &a, const int &b) {
- int ap = a, bp = b;
- vector<int> da;
- vector<int> db;
- if (ap == 0)
- da.insert(da.begin(), ap%10);
- while (ap > 0) {
- da.insert(da.begin(), ap%10);
- ap /= 10;
- }
- if (bp == 0)
- db.insert(db.begin(), bp%10);
- while (bp > 0) {
- db.insert(db.begin(), bp%10);
- bp /= 10;
- }
- size_t size;
- if (da.size() < db.size()) {
- size = da.size();
- } else {
- size = db.size();
- }
- for (size_t i = 0; i < size; ++i)
- if (da[i] > db[i])
- return true;
- else if (da[i] < db[i])
- return false;
- else
- continue;
- if (da.size() > db.size())
- return false;
- else
- return true;
- }
- string largestNumber(vector<int>& nums) {
- string res = "";
- sort(nums.begin(), nums.end(), lex_compare);
- for (auto it = nums.begin(); it != nums.end(); ++it)
- res += to_string(*it);
- return res;
- }
- int main() {
- vector<int> zeros {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
- cout << largestNumber(zeros) ;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement