题解 | #单词倒排#
单词倒排
https://www.nowcoder.com/practice/81544a4989df4109b33c2d65037c5836
#include <algorithm>
#include <iostream>
#include <numeric>
#include <string>
#include "string"
#include "vector"
#include "cmath"
using namespace std;
int main() {
string s;
vector<string> v;
getline(cin, s);
// cout<<s<<endl;
for (int i=0; i<s.size(); i++) {
if (!((s[i]>='a'&&s[i]<='z')||(s[i]>='A'&&s[i]<='Z'))) {
continue;
}
int endpos=i;
while (((s[endpos]>='a'&&s[endpos]<='z')||(s[endpos]>='A'&&s[endpos]<='Z'))) {
endpos++;
}
// cout<<s.substr(i,endpos-i)<<endl;
v.push_back(s.substr(i,endpos-i));
i=endpos;
}
reverse(v.begin(), v.end());
for (auto x : v) {
cout<<x<<" ";
}
}
// 64 位输出请用 printf("%lld")
