思路:与leetcode 里的 Merge Sorted Array相似
#include <iostream>
#include <cstdio>
#include <vector>
#include <string>
using namespace std;
int main()
{
string s;
while(getline(cin, s))
{
int count = 0;
for(int i = 0; i < s.size(); ++i)
if(s[i] == ' ') count++;
int idxofOrigin = s.size()-1;
s.resize(s.size()+2*count);
int idxofNew = s.size()-1;
while(idxofOrigin >= 0 && idxofNew != idxofOrigin)
{
if(s[idxofOrigin] != ' ') s[idxofNew--] = s[idxofOrigin];
else
{
s[idxofNew--] = '0';
s[idxofNew--] = '2';
s[idxofNew--] = '%';
}
idxofOrigin--;
}
cout<<s<<endl;
}
return 0;
}