Обобщённая функция статистики для чисел и строк
Условие
Дано q наборов значений: либо целые числа, либо строки. Для набора чисел выведите минимум, максимум и сумму. Для набора строк минимум и максимум в лексикографическом порядке (по кодам символов) и суммарную длину.
Напишите одну шаблонную функцию template <class T> Stats<T> stats(const std::vector<T>&) с минимумом и максимумом, а различие (сумма или длина) сделайте через if constexpr.
Ввод: q (1 ≤ q ≤ 200). Каждый набор: строка int n или str n (1 ≤ n ≤ 100), затем строка из n значений. Числа по модулю до 10¹⁶, строки из латинских букв до 6 символов.
Вывод: q строк min max x, где x сумма чисел или суммарная длина строк.
Пример 1
Ввод:
2
int 3
5 -2 7
str 3
banana Apple cherry
Вывод:
-2 7 10
Apple cherry 17
Пример 2
Ввод:
1
int 1
-10000000000000000
Вывод:
-10000000000000000 -10000000000000000 -10000000000000000
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.