题目:
https://leetcode.com/problems/create-maximum-number/
思路:
从nuns1中选[0, min(nums1.size(),k] 个数字,剩下的从nuns2选,选出来后按照规则组合成一个数字,最大的为答案。注意边界条件。
class Solution
{
public:
vector<int> maxNumber(vector<int>& nums1, vector<int>& nums2, int k)
{
if (k <= 0)
{
return vector<int>();
}
if (k > nums1.size() + nums2.size())
return merge(nums1, nums2);
int n1 = nums1.size(), n2 = nums2.size();
vector<int> res(k, -1);
for (int i = 0; i <= min(n1, k); ++i)
{
int j = k - i;
if (j
版权声明:本文为bupt8846原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。