#include <iostream>
#include <vector>
using namespace std;
class C
{
public:
C(const std::vector<double>& a_, const std::vector<double>& b_)
:a(a_),b(b_){};
double operator()(size_t i, size_t j) const { return a[i]*b[j]; }
private:
std::vector<double> a, b;
};
int main() {
C c({1,2,3,4},{10,20,30,40});
cout << "3*30 "<<c(2,2);
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwogICAgY2xhc3MgQwogICAgewogICAgcHVibGljOgogICAgICAgIEMoY29uc3Qgc3RkOjp2ZWN0b3I8ZG91YmxlPiYgYV8sIGNvbnN0IHN0ZDo6dmVjdG9yPGRvdWJsZT4mIGJfKQogICAgICAgICAgICA6YShhXyksYihiXyl7fTsKICAgICAgICBkb3VibGUgb3BlcmF0b3IoKShzaXplX3QgaSwgc2l6ZV90IGopIGNvbnN0IHsgcmV0dXJuIGFbaV0qYltqXTsgfQogICAgcHJpdmF0ZToKICAgICAgICAgc3RkOjp2ZWN0b3I8ZG91YmxlPiBhLCBiOwogICAgfTsKICAgIAppbnQgbWFpbigpIHsKCUMgYyh7MSwyLDMsNH0sezEwLDIwLDMwLDQwfSk7Cgljb3V0IDw8ICIzKjMwICI8PGMoMiwyKTsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCXJldHVybiAwOwp9