题解 | #句子逆序#
句子逆序
https://www.nowcoder.com/practice/48b3cb4e3c694d9da5526e6255bb73c3
#include <iostream>
#include <string>
using namespace std;
//反转字符串
void reverse(string & s, int l, int r) {
while(l < r) {
swap(s[l], s[r]);
l++;
r--;
}
}
int main() {
string s;
getline(cin, s);
reverse(s, 0, s.size()-1);
int start = 0;
for(int i = 0; i < s.size(); i++) {
if(s[i] == ' '){
reverse(s, start, i-1);
start = i+1;
}
}
//反转最后一个
reverse(s, start, s.size()-1);
cout << s;
return 0;
}

查看14道真题和解析
