template <typename T>
struct is_not_container
{
static const bool value = !has_const_iterator<T>::value ||
!has_begin_end<T>::beg_value || !has_begin_end<T>::end_value;
};
template <class Container>
typename std::enable_if<is_container<Container>::value>::type
print(const Container& c, string sep=" ", string end="\n")
{
std::ostream_iterator<typename Container::value_type>
out_it(std::cout, sep.c_str());
std::copy(c.begin(), c.end(), out_it);
std::cout << end;
}
template<typename T>
typename std::enable_if<is_not_container<T>::value>::type
print(T value, string end="\n")
{
std::cout << value << end;
}
приводите в пример операции, которые вполне легко ускоряются.
Теперь о предподсчете. Что Вы понимаете под медленнее?
суммирования всех чисел в массиве
Так же в данном контексте не вижу принципиальной разницы между обычным массивом и Set'ом. Раскройте, пожалуйста, мысль
Вам дана часть строки, получившейся у Васи