输入一组数字(最多15个),去掉连续次数大于等于三的数字,如果去掉后仍有连续次数大于等于三的,继续进行同样的处理,直到结果中没有出现连续次数大于等于三的数字为止。
如果最终全部消除完了 输出“none”
输入:1 1 1 1 2 2 2 1 3 3 3 3 1 1 1
输出:none
#include<iostream>
#include<map>
#include<vector>
using namespace std;
int main(int argc, char *argv[])
{
vector<int>vec;
vector<int>data;
map<int,int>m;
int a;
while(cin>>a)
{
m[a]++;
vec.push_back(a);
}
for(vector<int>::iterator iter=vec.begin();iter!=vec.end();++iter)
{
if(m[*iter]<3)
data.push_back(*iter);
}
if(data.empty()==true)
cout<<"none"<<endl;
else{
cout<<*data.begin();
for(vector<int>::iterator iter=data.begin()+1;iter!=data.end();++iter)
{
cout<<" "<<*iter;
}
cout<<"\n";
}
return 0;
}
原文地址:http://blog.csdn.net/wdkirchhoff/article/details/42537187