1009. 说反话 (20)

来源:互联网 发布:中巴关系 知乎 编辑:程序博客网 时间:2024/06/05 04:18

1009. 说反话 (20)

时间限制 400 ms
内存限制 65536 kB
代码长度限制 8000 B
判题程序 Standard
作者 CHEN, Yue

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。

输出格式:每个测试用例的输出占一行,输出倒序后的句子。

输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello

原题地址: 链接

运用了点小技巧, 把空格换成字符串结束标志’\0’, 以便快速倒序输出, 注意末尾单词后没有空格

#include <iostream>#include <algorithm>#include <cmath>#include <cstdio>#include <cstring>#include <cctype>using namespace std;char s[100];void solve(){    s[0] = ' ';    for(int i = strlen(s + 1) - 1; i >= 0; i --){        if(s[i] == ' '){            cout << s + i + 1;            if(i > 0)                cout << " ";            s[i] = 0;        }    }    cout << endl;}int main(){    gets(s + 1);    solve();    return 0;}
0 0