#include <iostream>
#include <functional>
std::function<int(int)> gen_fun(int n) {
return [&n](int x) { return x*n; };
}
int main() {
std::function<int(int)> f = gen_fun(5);
std::cout << f(1) << std::endl;
std::cout << f(2) << std::endl;
std::cout << f(3) << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8ZnVuY3Rpb25hbD4KIApzdGQ6OmZ1bmN0aW9uPGludChpbnQpPiBnZW5fZnVuKGludCBuKSB7CiAgICByZXR1cm4gWyZuXShpbnQgeCkgeyByZXR1cm4geCpuOyB9Owp9CiAKaW50IG1haW4oKSB7CiAgICBzdGQ6OmZ1bmN0aW9uPGludChpbnQpPiBmID0gZ2VuX2Z1big1KTsKICAgIHN0ZDo6Y291dCA8PCBmKDEpIDw8IHN0ZDo6ZW5kbDsKICAgIHN0ZDo6Y291dCA8PCBmKDIpIDw8IHN0ZDo6ZW5kbDsKICAgIHN0ZDo6Y291dCA8PCBmKDMpIDw8IHN0ZDo6ZW5kbDsKfQ==