#include <iostream>
#include <algorithm>
using namespace std;
struct A
{
bool operator()(const int &i)
{
cout<<"operator() "<<this<<" "<<i<<endl;
return (i%2)==0;
}
};
int main()
{
vector<int> v,v2(11);
for (int i=0;i<10;i++) v.push_back(i+100);
//v.push_back(103);
vector<int> :: iterator p,k;
for (p = v.begin();p!=v.end();p++) cout<<*p<<" "; cout<<endl;
k = remove_if(v.begin(),v.end(),A());
//cout<<*k<<" "; cout<<endl;
cout<<endl;
for (p = v.begin();p!=v.end();p++) cout<<*p<<" "; cout<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwpzdHJ1Y3QgQQp7Cglib29sIG9wZXJhdG9yKCkoY29uc3QgaW50ICZpKQoJewoJCWNvdXQ8PCJvcGVyYXRvcigpICI8PHRoaXM8PCIgIjw8aTw8ZW5kbDsKCQlyZXR1cm4gKGklMik9PTA7Cgl9Cn07CgppbnQgbWFpbigpCnsKCXZlY3RvcjxpbnQ+IHYsdjIoMTEpOwoJZm9yIChpbnQgaT0wO2k8MTA7aSsrKSB2LnB1c2hfYmFjayhpKzEwMCk7CgkvL3YucHVzaF9iYWNrKDEwMyk7Cgl2ZWN0b3I8aW50PiA6OiBpdGVyYXRvciBwLGs7Cglmb3IgKHAgPSB2LmJlZ2luKCk7cCE9di5lbmQoKTtwKyspIGNvdXQ8PCpwPDwiICI7IGNvdXQ8PGVuZGw7IAoJayA9IHJlbW92ZV9pZih2LmJlZ2luKCksdi5lbmQoKSxBKCkpOwoJLy9jb3V0PDwqazw8IiAiOyBjb3V0PDxlbmRsOyAKCWNvdXQ8PGVuZGw7IAoJZm9yIChwID0gdi5iZWdpbigpO3AhPXYuZW5kKCk7cCsrKSBjb3V0PDwqcDw8IiAiOyBjb3V0PDxlbmRsOyAKCQoJcmV0dXJuIDA7Cn0K