179. Largest Number | LeetCode Solution

 179. Largest Number | LeetCode Solution

Given a list of non-negative integers nums, arrange them such that they form the largest number and return it.

Since the result may be very large, so you need to return a string instead of an integer.

 

Example 1:

Input: nums = [10,2]
Output: "210"

Example 2:

Input: nums = [3,30,34,5,9]
Output: "9534330"

 

Constraints:

  • 1 <= nums.length <= 100
  • 0 <= nums[i] <= 109
class Solution
{
public:
  static bool cmp(int a, int b)
  {
    return (to_string(a) + to_string(b)) > (to_string(b) + to_string(a));
  }
  string largestNumber(vector<int> &n)
  {
    sort(n.begin(), n.end(), cmp);
    string ans = "";
    for (auto i : n)
    {
      ans += to_string(i);
    }
    int i = 0;
    while (i < ans.size() - 1 && ans[i] == '0')
    {
      i++;
    }
    return ans.substr(i);
  }
};

Post a Comment

0 Comments