題目描述
給你一個正整數數組 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;}
};