Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3551320
А
Аноним
23 января 2026 14:53 · публичный вопрос
А
Аноним

Задача 3 У Васи есть код от домофона. У тебя есть запись всех Васиных попыток ввести код, а в конце — верный ввод. Сколько раз Вася набрал неверный код, в котором было столько же…

Запрос пользователя

Задача 3 У Васи есть код от домофона. У тебя есть запись всех Васиных попыток ввести код, а в конце — верный ввод. Сколько раз Вася набрал неверный код, в котором было столько же цифр, сколько в правильном? В первой строке входных данных записан Васин код, а затем его попытки его набрать. Последняя попытка — верная. Программа должна вывести одно целое число: количество неверных кодов такой же длины, как и правильный.

Ответ нейросети
23 января 2026 14:53

Понимаю задачу. Нужно посчитать, сколько из попыток Васи были неверными и при этом имели такую же длину, как и правильный код. Последняя попытка в списке — это верный код, поэтому ее учитывать не надо.

Пошаговое решение (логика)

  • Пусть первая строка входа — правильный код (со строками цифр). Остальные строки — попытки, последняя из них — верный код.
  • Пройдёмся по всем попыткам, кроме последней.
  • Для каждой попытки считаем её длину: если она равна длине правильного кода и сама попытка не совпадает с правильным кодом, то увеличиваем счётчик.
  • Выведем полученный счётчик.

Сложность: O(n) по числу попыток, память — O(1) помимо входных данных.

Пример реализации (Python)

# Чтение входных данных: первая строка - правильный код, остальные - попытки.
lines = [line.strip() for line in __import__('sys').stdin]

if not lines:
    print(0)
else:
    correct_code = lines[0]
    attempts = lines[1:]

    count = 0
    # Рассматриваем все попытки кроме последней (которая верная)
    for att in attempts[:-1]:
        if len(att) == len(correct_code) and att != correct_code:
            count += 1

    print(count)

Пояснение к примеру

  • Ввод: 12345 123 22344 12345
  • Правильный код: "12345", попытки: ["123", "22344", "12345"].
  • Рассматриваем "123" (длина 3 ≠ 5 — не считаем), "22344" (длина 5 и не равен правильному — считаем), последняя "12345" — верная и не учитывается.
  • Ответ: 1

Дополнительные примеры

  • Ввод: 0000 000 0000
  • Здесь только попытка "000" имеет другую длину и не считается. Правильный код — последняя строка, но мы её не считаем. Ответ: 0.

Если хочешь, могу адаптировать решение под другой язык программирования (Java, C++, JavaScript и т.д.).