#include <iostream>
using std::cin; using std::cout; using std::endl; using std::cerr;
#include <string>
using std::string;
#include <vector>
using std::vector;
#include <algorithm>
using std::sort; using std::unique; using std::find_if;
#include <functional>
using namespace std::placeholders; using std::bind;
using std::ref; using std::cref;
bool check_size(const string &a, string::size_type sz){
return a.size() >= sz;
}
bool check_size_int(const string &a, int i){
return i >=0 && !check_size(a, i);
}
vector<int>::iterator find_it(vector<int> &vi, const string &s){
auto g = bind(check_size_int, s, _1);
auto it = find_if(vi.begin(), vi.end(), g);
return it;
}
int main() {
vector<int> vi{1, 2, 3, 4, 5, 6, 7, 8, 9};
string s("test");
cout << *find_it(vi, s)<< endl;
}