题目描述
给你一个正整数数组 nums ,请你返回一个数组 answer ,你需要将 nums 中每个整数进行数位分割后,按照 nums 中出现的 相同顺序 放入答案数组中。
对一个整数进行数位分割,指的是将整数各个数位按原本出现的顺序排列成数组。
比方说,整数 10921 ,分割它的各个数位得到 [1,0,9,2,1] 。
示例 1:
输入:nums = [13,25,83,77]
输出:[1,3,2,5,8,3,7,7]
解释:
- 分割 13 得到 [1,3] 。
- 分割 25 得到 [2,5] 。
- 分割 83 得到 [8,3] 。
- 分割 77 得到 [7,7] 。
answer = [1,3,2,5,8,3,7,7] 。answer 中的数字分割结果按照原数字在数组中的相同顺序排列。
示例 2:
输入:nums = [7,1,3,9]
输出:[7,1,3,9]
解释:nums 中每个整数的分割是它自己。
answer = [7,1,3,9] 。
提示:
1 <= nums.length <= 1000
1 <= nums[i] <= 105
算法分析
把每个数字分开插入到tmp当中,然后反转,再插入到结果数组当中
完整代码
class Solution {
public:
vector<int> separateDigits(vector<int>& nums) {
vector<int>ans;
vector<int>tmp;
for(auto i:nums)
{
tmp.clear();
while(i!=0)
{
int t=i%10;
tmp.push_back(t);
i/=10;
}
reverse(tmp.begin(),tmp.end());//反转
for(auto i:tmp)
ans.push_back(i);
}
return ans;
}
};
标签:tmp,分割,2553,nums,--,力扣,数组,answer,数位
From: https://blog.csdn.net/m0_75266675/article/details/139400307