“句子反转”这道题是小米的2017年校园招聘题。
题目:句子反转
时间限制:C/C++语言 1000MS;其他语言 3000MS
内存限制:C/C++语言 65536KB;其他语言 589824KB
题目描述:
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。
比如: “hello xiao mi”-> “mi xiao hello”
输入值
输入数据有多组,每组占一行,包含一个句子(句子长度小于1000个字符)
输出值
对于每个测试示例,要求输出句子中单词反转后形成的句子
解题思路:vector
#include<iostream>
#include<vector>
#include<string>
using namsplace std;
int main(){
string str;
vector<string> svec; //empty vector
while(cin >> str)
svec.push_back(str);
for(int i = svec.size()-1; i>=1; --i)
cout << svec[i] <<" ";
cout << svec[0] <<endl; //前后没有空格
return 0;
}
参考文章:CoderZSL、push_back方法