依次输入n个整数,每次输入时检查该值是否已经出现在vector中,如果存在则不插入,否则将其插入到开头位置。
部分代码已经给出,请补充完整,提交时请勿包含已经给出的代码。
C++
int main()
{
vector vec;
int n, x;
cin>>n;
while(n–)
{
cin>>x;
Insert(vec, x);
}
for(vector::iterator it=vec.begin();it!=vec.end();it++)
{
cout<<*it<<endl;
}
return 0;
}
输入
第一行为正整数n。
第二行为n个整数,空格隔开。
输出
输出vector中的所有整数,每行一个。
样例输入
3
1 2 3
样例输出
3
2
1
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
void Insert(vector<int> &vec, int x)
{
int flag = 0;
for (vector<int>::iterator it = vec.begin(); it != vec.end(); it++) {
if (*it == x) {
flag = 1;
}
}
if (flag == 0) {
vec.insert(vec.begin(),x);//将x插到vec第一个元素前面
}
}