Семь задач о том, как элементы стоят друг относительно друга: рядом с соседом, напротив зеркального или перенесённые по кругу на новое место.
- Циклы по соседям останавливаются на шаг раньше. С
a[i + 1]крутите цикл, покаi + 1 < n; сa[i - 1]начинайте сi = 1. У вектора из одного элемента пар соседей нет совсем — проверьте этот случай. - Сортирован? означает, что каждый элемент не больше следующего
(
a[i] <= a[i + 1]); равные соседи допускаются. - Количество различных чисел 2 получает отсортированный вектор: посчитайте места, где число отличается от предыдущего, и прибавьте 1 за первое.
- Самая длинная последовательность одинаковых значений: счётчик серии из урока,
с проверкой
a[i] == a[i - 1]. - Москва-сортировочная: вагоны — это перестановка чисел от 1 до
N. Два соседних вагона могут остаться сцепленными, только если второй ровно на единицу больше первого, — посчитайте места, гдеa[i + 1] != a[i] + 1. - Палиндромный массив сравнивает
a[i]с зеркальнымa[n - 1 - i]для первой половины. - Развернуть массив 2 разворачивает только часть от
lдоr(считая с 1): два индекса,i = l - 1иj = r - 1, иswap, покаi < j. - Циклический сдвиг массива переносит последний элемент в начало: сначала
выведите
a[n - 1], потомa[0]…a[n - 2].