8680. Четные соседи

 

Задана последовательность целых чисел. Подсчитайте количество элементов, у которых два четных соседа.

 

Вход. В первой строке задано количество элементов последовательности n (n ≤ 1000). Во второй строке заданы сами элементы, значение каждого из которых по модулю не превышает 100.

 

Выход. Выведите количество элементов последовательности с двумя четными соседями.

 

Пример входа

Пример выхода

6

1 2 3 4 5 6

2

 

 

РЕШЕНИЕ

массив

 

Анализ алгоритма

Прочитаем входную последовательность в массив m[0, …, n – 1]. Элемент m[i] имеет двух четных соседей, если только

·        1 ≤ in – 2;

·        m[i – 1] и m[i + 1] четные.

В задаче требуется подсчитать количество элементов с двумя четными соседями.

 

Реализация алгоритма

Читаем входные данные.

 

scanf("%d", &n);

for (i = 0; i < n; i++)

  scanf("%d", &m[i]);

 

В переменной res подсчитываем количество элементов с двумя четными соседями.

 

res = 0;

 

Числа находятся в массиве с индексами от 0 до n – 1. Двух соседей имеют элементы с индексами от 1 до n2. Перебираем их и подсчитываем количество таких, которые имеют четных соседей.

 

for (i = 1; i < n - 1; i++)

  if ((m[i - 1] % 2 == 0) && (m[i + 1] % 2 == 0)) res++;

 

Выводим ответ.

 

printf("%d\n", res);