cp-library-cpp

This documentation is automatically generated by online-judge-tools/verification-helper

View the Project on GitHub suisen-cp/cp-library-cpp

:heavy_check_mark: Montmort Number
(library/sequence/montmort_number.hpp)

Montmort Number

Verified with

Code

#ifndef SUISEN_MONTMORT_NUMBER
#define SUISEN_MONTMORT_NUMBER

#include <vector>

namespace suisen {
    template <typename mint>
    std::vector<mint> montmort_number(int n) {
        std::vector<mint> res{ 1, 0 };
        for (int i = 2; i <= n; ++i) res.push_back((i - 1) * (res[i - 1] + res[i - 2]));
        res.resize(n + 1);
        return res;
    }
} // namespace suisen

#endif // SUISEN_MONTMORT_NUMBER
#line 1 "library/sequence/montmort_number.hpp"



#include <vector>

namespace suisen {
    template <typename mint>
    std::vector<mint> montmort_number(int n) {
        std::vector<mint> res{ 1, 0 };
        for (int i = 2; i <= n; ++i) res.push_back((i - 1) * (res[i - 1] + res[i - 2]));
        res.resize(n + 1);
        return res;
    }
} // namespace suisen
Back to top page