22 #ifndef CRNCOMBINATORICS_HEADER
23 #define CRNCOMBINATORICS_HEADER
40 namespace Combinatorics
48 template <
class ITER,
class CMP> std::vector<typename std::iterator_traits<ITER>::value_type>
Minimals(ITER i_begin, ITER i_end, CMP comp = std::less<
typename std::iterator_traits<ITER>::value_type>())
50 std::vector<typename std::iterator_traits<ITER>::value_type> minimals;
52 for (ITER i = i_begin; i != i_end; ++i)
55 bool is_minimal =
true;
57 while ((j != i_end) && is_minimal)
78 minimals.push_back(*i);
int CountCombinations(int n, int p) noexcept
std::vector< typename std::iterator_traits< ITER >::value_type > Minimals(ITER i_begin, ITER i_end, CMP comp=std::less< typename std::iterator_traits< ITER >::value_type >())
int CountArrangements(int n, int p) noexcept