题目描述
小明同学写单词的时候喜欢反着写,比如 hello
他会写成 olleh
。给出小明同学写的一个句子,请你将所有的单词复原。
输入格式
共一行,一个字符串表示句子,单词之间以空格分隔。
输出格式
每个单词一行
输入输出样例
输入 #1 输出 #1
olleh dlrow hello world
说明/提示
句子长度不超过 100100,仅包含小写字母和空格,不存在多余的空格。
解法一
#include <bits/stdc++.h>
using namespace std;
char s[505];
int cnt, pos;
int main()
{
cin.getline(s, 505);
int len = strlen(s);
s[len] = ' ';
for (int i = 0; i <= len; i++)
{
if (s[i] != ' ')
{
cnt++;
}
else
{
pos = i;
for (int j = 1; j <= cnt; j++)
{
cout << s[--pos];
}
cnt = 0;
if (i != len)
{
cout << " ";
}
}
}
return 0;
}
解法二
#include <bits/stdc++.h>
using namespace std;
string s;
int main()
{
while (cin >> s)
{
reverse(s.begin(), s.end());
cout << s << endl;
}
return 0;
}