[劍指offer]替換空格

思路:與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;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章