1417. 重新格式化字符串

代码实现(自解)
class Solution {
private:
string reformatString(vector<char> v1, vector<char> v2) {
int n = v1.size();
int m = v2.size();
int pv1 = 0, pv2 = 0;
string ans = "";
while (pv1 != n && pv2 != m) {
ans.append(1, v1[pv1++]);
ans.append(1, v2[pv2++]);
}
while (pv1 != n) {
ans.append(1, v1[pv1++]);
}
return ans;
}
public:
string reformat(string s) {
vector<char> nums;
vector<char> alphabet;
for (char c : s) {
if (isdigit(c)) {
nums.push_back(c);
}
else alphabet.push_back(c);
}
int n = nums.size();
int m = alphabet.size();
if (abs(n - m) > 1) return "";
if (n >= m) return reformatString(nums, alphabet);
return reformatString(alphabet, nums);
}
};