offer05
This commit is contained in:
1
cpp/.gitignore
vendored
Normal file
1
cpp/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
.vscode
|
||||||
33
cpp/test.cpp
Normal file
33
cpp/test.cpp
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
#include <iostream>
|
||||||
|
#include <string>
|
||||||
|
using namespace std;
|
||||||
|
class Solution {
|
||||||
|
public:
|
||||||
|
string replaceSpace(string s) {
|
||||||
|
int count = 0;
|
||||||
|
int lenth = s.size();
|
||||||
|
for(auto i = 0; i < lenth; ++i){
|
||||||
|
if(s[i] == ' '){
|
||||||
|
count = count + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
s.resize(s.size() + 2 * count);
|
||||||
|
for(int i = lenth - 1, j = s.size() - 1; i < j; --i, --j){
|
||||||
|
if (s[i] != ' ')
|
||||||
|
s[j] = s[i];
|
||||||
|
else {
|
||||||
|
s[j - 2] = '%';
|
||||||
|
s[j - 1] = '2';
|
||||||
|
s[j] = '0';
|
||||||
|
j -= 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return s;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
int main(){
|
||||||
|
string s = "We are happy.";
|
||||||
|
Solution test;
|
||||||
|
cout<<test.replaceSpace(s)<<endl;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user