1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | #include <iostream> template <int N> struct Factorial { enum { value = N * Factorial<N - 1>::value }; }; template <> struct Factorial<0> { enum { value = 1 }; }; int main() { auto const f10 = Factorial<10>::value; // done at compile-time std::cout << f10 << "\n"; // prints 3628800 return 0; } |
ICAgICNpbmNsdWRlIDxpb3N0cmVhbT4KCiAgICB0ZW1wbGF0ZSA8aW50IE4+CiAgICBzdHJ1Y3QgRmFjdG9yaWFsIHsKICAgICAgICBlbnVtIHsgdmFsdWUgPSBOICogRmFjdG9yaWFsPE4gLSAxPjo6dmFsdWUgfTsKICAgIH07CiAgICAgCiAgICB0ZW1wbGF0ZSA8PgogICAgc3RydWN0IEZhY3RvcmlhbDwwPiB7CiAgICAgICAgZW51bSB7IHZhbHVlID0gMSB9OwogICAgfTsKCiAgICBpbnQgbWFpbigpCiAgICB7CiAgICAgICAgYXV0byBjb25zdCBmMTAgPSBGYWN0b3JpYWw8MTA+Ojp2YWx1ZTsgLy8gZG9uZSBhdCBjb21waWxlLXRpbWUKICAgICAgICBzdGQ6OmNvdXQgPDwgZjEwIDw8ICJcbiI7ICAgICAgICAgICAgICAvLyBwcmludHMgMzYyODgwMAoKICAgICAgICByZXR1cm4gMDsKICAgIH0=
-
upload with new input
-
result: Success time: 0s memory: 2928 kB returned value: 0
3628800


