题解 | #单词倒排#
单词倒排
http://www.nowcoder.com/practice/81544a4989df4109b33c2d65037c5836
#include <string.h>
#include<algorithm>
#include<iostream>
#include<string>
using namespace std;
int main()
{
string a;
while (getline(cin, a))
{
string b;
while (a.length())
{
int c = 0;
for (int i = 0; i < a.length(); i++)
{
if (('a' <= a[i] && a[i] <= 'z') || ('A' <= a[i] && a[i] <= 'Z'))
{
c++;
}
if (c == a.length())
{
b += a;
a = "";
}
}
for (int i = a.length() - 1; i >= 0; i--)
{
if (!(('a' <= a[i] && a[i] <= 'z') || ('A' <= a[i] && a[i] <= 'Z')))
{
b += a.substr(i + 1, a.length() );
b += ' ';
if (i == 0)
{
a = "";
}
else
{
a = a.substr(0, i);
break;
}
break;
}
}
}
cout << b << '\n';
}
return(0);
}
#include<algorithm>
#include<iostream>
#include<string>
using namespace std;
int main()
{
string a;
while (getline(cin, a))
{
string b;
while (a.length())
{
int c = 0;
for (int i = 0; i < a.length(); i++)
{
if (('a' <= a[i] && a[i] <= 'z') || ('A' <= a[i] && a[i] <= 'Z'))
{
c++;
}
if (c == a.length())
{
b += a;
a = "";
}
}
for (int i = a.length() - 1; i >= 0; i--)
{
if (!(('a' <= a[i] && a[i] <= 'z') || ('A' <= a[i] && a[i] <= 'Z')))
{
b += a.substr(i + 1, a.length() );
b += ' ';
if (i == 0)
{
a = "";
}
else
{
a = a.substr(0, i);
break;
}
break;
}
}
}
cout << b << '\n';
}
return(0);
}