Восемь задач на ссылки и на передачу векторов и строк. Читайте ограничения в условиях: в некоторых из них массив может быть пустым.
- «Order Two»:
void order(long long &a, long long &b), которая меняет числа местами, если они стоят в неправильном порядке. Без&доmainничего не дойдёт. - В «Sum an Array» и «Count in Range» может быть n = 0, и тогда вторая строка
пустая. Цикл, который выполняется 0 раз, с этим справляется; сумма пустого
набора — 0. Для суммы 2·10⁵ чисел до 10⁹ нужен
long long. - «Статистика массивов» просит три ответа о каждом из трёх массивов: одна функция
с
const vector<long long> &и тремя параметрами-ссылками, вызванная трижды. - «Подсчёт символов в строках» — та же идея для строки: одна функция записывает в параметры-ссылки количество гласных, согласных и цифр.
- «Победитель по сумме чётных»: функция
readVector, вызванная дважды, иevenSum, которая пропускает нечётные числа. Отрицательные чётные тоже считаются. - «Проверка сортировки трёх последовательностей»: каждая строка начинается со
своей длины, а она может быть равна 0.
isSorted(const vector<int> &a)сравнивает каждый элемент со следующим. - «Palindrome Check»: при n = 0 строка пустая, а пустая строка — палиндром. Читайте строку, только если n > 0.