10using set_t = std::deque<element_t>;
14 if(S.empty() || r == 0)
return;
18 auto quotient = m_th / n_1_p_r_1;
20 R.push_back(S[quotient]);
22 S.erase(S.begin() + quotient);
31 std::iota(S.begin(), S.end(), 1);
37 for(
size_t m_th = 0; m_th < max_m_th; ++m_th)
42 stream <<
" m_th -> "<< std::setw(2) << m_th <<
" : " << R <<
endl;
std::deque< element_t > set_t
void build_permutation(set_t S, set_t &R, size_t r, size_t m_th)
void test_permutation(size_t n, size_t r)
enable_if_all_in_list_t< types::type_list_t< Type1, Type2 >, integral_list_t, ReturnType > npr(Type1 nn, Type2 rr)
Stream output operators << are implemented.