Сколько раз робот споткнётся
Условие
Робот-уборщик едет по длинному коридору из плиток. На каждой плитке написано число. Робот спотыкается на каждой плитке с нечётным числом.
Помоги роботу: посчитай, сколько раз он споткнётся за весь проезд.
Формат ввода
В первой строке дано число n — сколько плиток в коридоре. Во второй строке дано n целых чисел a1, a2, ..., an — числа на плитках.
Формат вывода
Выведи одно число — сколько среди этих чисел нечётных.
Ограничения
1 ≤ n ≤ 10000 ≤ ai ≤ 1000
Пример
Ввод:
5
1 2 3 4 5
Вывод:
3
Потому что нечётные плитки: 1, 3 и 5.
Как решать — идея подхода
Приём: Линейный проход и проверка чётности
Ключевое наблюдение: робот «спотыкается» ровно на тех плитках, где число нечётное. Значит, задача сводится к подсчёту количества нечётных элементов в списке.
Подходит приём линейного прохода: мы один раз смотрим на каждое число и решаем, увеличивать счётчик или нет. Это работает, потому что ответ — это сумма независимых «да/нет» по каждому элементу.
План решения:
- Считай
nи список изnчисел. - Заведи переменную
cnt = 0. - Для каждого числа
x: - проверь нечётность через остаток от деления на 2;
- если нечётное — увеличь
cnt. - Выведи
cnt.
Мини-сниппет для проверки:
if x % 2 == 1: cnt += 1
Сложность: O(n) по времени и O(1) по памяти (если обрабатываешь числа по одному).
Частая ошибка: путать проверку нечётности. x % 2 == 0 — это чётное, а для нечётного нужно == 1 (или просто x % 2 != 0).
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- Перечневые олимпиады: что это и что дают — весь перечень Минобрнауки: уровни, срок диплома, разрезы по предметам и классам
- Олимпиада по информатике: с чего начать — два мира олимпиад — ВсОШ и перечневые: этапы, задания и на каком языке писать