Сколько было морозных дней?
Условие
В школьном дневнике погоды записали температуры за несколько дней подряд.
Морозный день — это день, когда температура строго ниже 0.
Помоги посчитать, сколько морозных дней было в записи.
Формат ввода
- В первой строке одно целое число
n— сколько дней записано. - Во второй строке
nцелых чисел — температуры по дням.
Формат вывода
Выведи одно число — сколько температур строго меньше нуля.
Ограничения
1 ≤ n ≤ 1000-100 ≤ температура ≤ 100
Пример
Ввод:
5
-3 0 2 -1 -10
Вывод:
3
Пояснение: морозные температуры тут: -3, -1, -10.
Как решать — идея подхода
Приём: Линейный проход и счётчик
Ключевое наблюдение: нужен не минимум/сумма, а просто количество элементов, удовлетворяющих условию t < 0. Значит, достаточно один раз посмотреть на каждую температуру и вести счётчик.
Почему это работает: у каждого дня решение «морозный или нет» принимается независимо от других дней. Поэтому линейный проход (один цикл) даёт ответ без лишних структур.
План решения:
- Прочитай
n. - Прочитай список из
nцелых температур. - Заведи переменную
ans = 0. - Для каждой температуры
t: - если
t < 0, увеличьansна 1. - Выведи
ans.
Мини-сниппет с ключевой проверкой:
if t < 0: ans += 1
Сложность: время O(n), память O(1) (если обрабатывать по одной температуре) или O(n) (если сначала сохранить весь список).
Частая ошибка: перепутать «строго ниже 0» и «не выше 0». Температура 0 не считается морозной, условие должно быть именно t < 0, а не t <= 0.
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- Перечневые олимпиады по информатике — олимпиады перечня Минобрнауки, их уровни и что нужно к диплому
- БВИ по олимпиадам: в какие вузы берут — правила приёма вузов, разобранные построчно, со ссылкой на приказ у каждой строки