:warning: カタラン台形
(math/catalans_trapezoids.hpp)

Code

/**
 * @brief カタラン台形
 */
template<typename T>
T catalans_trapezoids(long long n,long long k,long long m=1){
    if(m<=0)return T();
    else if(0<=k&&k<m)return T(n+k).comb(k);
    else if(m<=k&&k<n+m)return T(n+k).comb(k)-T(n+k).comb(k-m);
    else return T(0);
}
#line 1 "math/catalans_trapezoids.hpp"
/**
 * @brief カタラン台形
 */
template<typename T>
T catalans_trapezoids(long long n,long long k,long long m=1){
    if(m<=0)return T();
    else if(0<=k&&k<m)return T(n+k).comb(k);
    else if(m<=k&&k<n+m)return T(n+k).comb(k)-T(n+k).comb(k-m);
    else return T(0);
}
Back to top page