#include <boost/multiprecision/cpp_int.hpp>
#include <iostream>
using namespace std; // consider removing this line in serious projects
boost::multiprecision::cpp_int fact(int n)
{
boost::multiprecision::cpp_int fact = 1;
for(int i = n ; i > 0 ; --i)
{
fact = fact * i;
}
return fact;
}
int main() {
boost::multiprecision::cpp_int result;
result = fact(45)/(fact(44));// * fact(25));
cout << result << endl;
return 0;
}
I2luY2x1ZGUgPGJvb3N0L211bHRpcHJlY2lzaW9uL2NwcF9pbnQuaHBwPgojaW5jbHVkZSA8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7IC8vIGNvbnNpZGVyIHJlbW92aW5nIHRoaXMgbGluZSBpbiBzZXJpb3VzIHByb2plY3RzCgpib29zdDo6bXVsdGlwcmVjaXNpb246OmNwcF9pbnQgZmFjdChpbnQgbikKewoJYm9vc3Q6Om11bHRpcHJlY2lzaW9uOjpjcHBfaW50IGZhY3QgPSAxOwoJZm9yKGludCBpID0gbiA7IGkgPiAwIDsgLS1pKQoJewoJCWZhY3QgPSBmYWN0ICogaTsKCX0KCXJldHVybiBmYWN0Owp9CgppbnQgbWFpbigpIHsKCWJvb3N0OjptdWx0aXByZWNpc2lvbjo6Y3BwX2ludCByZXN1bHQ7CglyZXN1bHQgPSBmYWN0KDQ1KS8oZmFjdCg0NCkpOy8vICogZmFjdCgyNSkpOwoJY291dCA8PCByZXN1bHQgPDwgZW5kbDsKCXJldHVybiAwOwp9