#include<stdio.h>
#include<iostream>
#include<vector>
using namespace std;
int main()
{
int a[]={0,0,0,1,1,1,2,2,2,3,3,3,4,4};
vector <int> nums(a,a+12);
vector <int> nums_copy=nums;
int len=nums.size();
if(len<3)return len;
int remove_num=0;
int elem_num=1;
for(int i=1;i<len;i++)
{
if(nums[i-1-remove_num]==nums[i-remove_num])
{
elem_num=elem_num+1;
cout<<elem_num<<" "<<i<<endl;
}
if(nums[i-1-remove_num]!=nums[i-remove_num] )
{
//if(remove_num!=0)elem_num=elem_num+1;
cout<<elem_num<<" "<<i<<"---------"<<endl;
if(elem_num<=2)
{
elem_num=1;
continue;
}
else
{
int begin=i-remove_num-(elem_num-2),end=i-remove_num;
nums.erase(nums.begin()+begin,nums.begin()+end);
remove_num=remove_num+(elem_num-2);
elem_num=1;
}
}
}
int t=1;
for(int i=nums.size()-2;i>=0;i--)
{
if(nums[i+1]==nums[i])
t=t+1;
else
break;
}
if(t>2)
{
nums.erase(nums.end()-(t-2),nums.end());
}
}