将第一行中含有第二行中“23”的数输出并排序
输入第一行数字:123 423 5645 875 186523
在输入第二行中:23
将将一行中含有第二行中“23”的数字输出并排序
结果即:123 423 186523
#include<iostream>
#include<string>
#include<vector>
#include<sstream>
#include<algorithm>
using namespace std;
void main(){
string sourceStr,targetStr;
vector<int> res;
getline(cin, sourceStr);
cin >> targetStr;
istringstream souStr(sourceStr);
string tmp;
while (souStr >> tmp){
string::size_type pos=tmp.find(targetStr);
if (pos != string::npos)
res.push_back(atoi(tmp.c_str()));
}
sort(res.begin(),res.end());
for (vector<int>::iterator ite = res.begin(); ite != res.end(); ite++)
cout << *ite << " ";
cin.get();
cin.get();
}