#ifndef SPROUT_ALGORITHM_IS_STRICTLY_DECREASING_HPP #define SPROUT_ALGORITHM_IS_STRICTLY_DECREASING_HPP #include #include #include #include HDR_FUNCTIONAL_SSCRISK_CEL_OR_SPROUT namespace sprout { // // is_strictly_decreasing // // recursion depth: // O(log N) // template inline SPROUT_CONSTEXPR bool is_strictly_decreasing(ForwardIterator first, ForwardIterator last) { return sprout::is_sorted( first, last, NS_SSCRISK_CEL_OR_SPROUT::greater_equal::value_type>() ); } } // namespace sprout #endif // #ifndef SPROUT_ALGORITHM_IS_STRICTLY_DECREASING_HPP