compro-library

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

View the Project on GitHub ningenMe/compro-library

:heavy_check_mark: MontmortNumber - 完全順列,撹乱順列の個数
(lib/30-math/MontmortNumber.cpp)

Verified with

Code

/*
 * @title MontmortNumber - 完全順列,撹乱順列の個数
 * @docs md/math/MontmortNumber.md
 */
template <class T> class MontmortNumber{
public:
    inline static vector<T> get(const size_t N) {
        vector<T> res(N+1,0);
        if(N>=2) res[2]=1;
        for(int i = 3; i <= N; ++i) res[i]=(res[i-1]+res[i-2])*(i-1);
        return res;
    }
};
#line 1 "lib/30-math/MontmortNumber.cpp"
/*
 * @title MontmortNumber - 完全順列,撹乱順列の個数
 * @docs md/math/MontmortNumber.md
 */
template <class T> class MontmortNumber{
public:
    inline static vector<T> get(const size_t N) {
        vector<T> res(N+1,0);
        if(N>=2) res[2]=1;
        for(int i = 3; i <= N; ++i) res[i]=(res[i-1]+res[i-2])*(i-1);
        return res;
    }
};
Back to top page