e-olymp 8680. Чётные соседи

Условие задачи

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

Входные данные

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

Выходные данные

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

Тесты

Входные данные Выходные данные
1 6
1 2 3 4 5 6
2
2 9
3 6 3 5 2 9 1 2 5
0
3 3
2 1 2
1
4 6
13 24 54 66 44 77
2
5 4
100 224 666 222
2

Программный код

Решение

Идея решения задачи состоит в том, чтобы создать три переменные: $prev$ (предыдущий), $pres$ (настоящий, текущий) и $fut$ (будущий). Затем в цикле мы перезаписываем эти переменные т.е.: настоящий становится прошлым, будущий настоящим, а новый будущий мы читаем из cin. Так же, в ходе решения задачи обнаружилась проблема с чтением количества элементов. Допустим, если мы записали, что $n=6$, а дальше ввели $10$ элементов, то количество элементов с чётными соседями будет считаться для $10$ элементов. Чтобы избежать этого мы ограничиваем количество читаемых элементов с помощью счётчика i++ и цикла while.

Ссылки

Related Images:

4 thoughts on “e-olymp 8680. Чётные соседи

    • Сравните название своей работы с названиями других. Нужно найти пару отличий в формате. Мелочь, конечно. Но я могу объяснить почему один формат лучше. А у Вас есть аргументы.
    • Давайте не будем ставить пробелы перед запятыми? Алина, это уже вторая Ваша работа. Мы уже это исправляли.
    • Давайте ставить пробелы после точек, точек с запятыми и т.п.? Нужно нанять специального человека, который будет объяснять, где ставить пробелы.
    • Избегайте закрученных предложений из трех десятков слов. Они почти всегда неудобны для понимания. А у неопытного писателя почти всегда плохо согласованы.
    • Пожалуйста, не нужно объяснять код. Объясняйте алгоритм.
    • Уберите из кода массивы.
    • Спасибо за комментарий! Всё исправила

    • Вы пишите «избежать лишнего числа». Но это не лишнее число. Это количество чисел, которые нужно прочитать. Сделайте, пожалуйста так, чтобы читать ровно столько чисел, сколько указано.
    • В остальном, пояснение к алгоритму — просто пересказ условия. Пожалуйста, объясните доходчиво про прием с прошлым, настоящим и будущим.
    • Все метки, кроме «последовательность» подойдут к 99% задач на сайте. Что это за особые приметы «циклы», «ветвления»? Как особая примета для человека «руки», «ноги». Понятно, что не у всех они есть. Но почти у всех. Добавьте особых примет именно про задачу и/или Ваш способ ее решения.
    • Спасибо за комментарий, исправила!

Добавить комментарий