
Вопрос задан 05.03.2025 в 15:36.
Предмет Информатика.
Спрашивает Азаренко Ирина.
Напишите программу, которая выводит номера элементов массива, равных заданному значению X .
Входные данные
Первая строка содержит размер массива N . Во второй строке через пробел задаются N чисел – элементы массива. В третьей строке записано число X . Гарантируется, что 0 < N ≤ 10000 .
Выходные данные
Программа должна вывести в одной строке номера элементов массива, равных X , разделив их пробелами. Предполагается, что нумерация начинается с единицы. Если таких элементов нет, нужно вывести число -1.
Примеры
входные данные
5
1 2 1 3 5
1
выходные данные
1 3
Ответы на вопрос

Отвечает Кувязев Максим.
Для решения задачи, нужно создать программу, которая будет искать все элементы массива, равные заданному числу , и выводить их индексы. Важно помнить, что индексация должна начинаться с 1, а не с 0, как в Python.
Давайте пошагово разберем, как можно решить эту задачу:
Шаги:
Чтение входных данных:
- Первая строка содержит число , которое обозначает количество элементов в массиве.
- Вторая строка содержит чисел — элементы массива.
- Третья строка содержит число , которое нужно искать в массиве.
Поиск индексов:
- Нам нужно пройти по всем элементам массива и найти те, которые равны .
- Для каждого такого элемента запишем его индекс (с учетом того, что индексация начинается с 1).
Вывод результата:
- Если найдено хотя бы одно совпадение, нужно вывести индексы всех таких элементов.
- Если совпадений нет, выводим "-1".
Пример решения:
Объяснение кода:
Чтение данных:
N = int(input())
— считываем размер массива.arr = list(map(int, input().split()))
— считываем элементы массива как целые числа.X = int(input())
— считываем число, которое будем искать в массиве.
Поиск индексов:
- Мы проходим по массиву с помощью цикла
for i in range(N)
и проверяем, равен ли элемент массива числу . - Если элемент равен , то добавляем его индекс (с учётом, что нумерация начинается с 1) в список
indices
.
- Мы проходим по массиву с помощью цикла
Вывод результата:
- Если в списке
indices
есть хотя бы один индекс, то мы выводим все индексы, разделённые пробелами. - Если таких элементов нет, выводим
-1
.
- Если в списке
Пример:
Входные данные:
Выходные данные:
Пояснение:
- В массиве
[1, 2, 1, 3, 5]
два элемента равны 1, это элементы с индексами 1 и 3 (по 1-балльной нумерации). - Программа выводит индексы этих элементов:
1 3
.
Если бы таких элементов не было, например, если бы , то программа вывела бы -1
.
Важные моменты:
- Мы учитываем, что индексация начинается с 1.
- Если элемент не найден, выводится
-1
. - Программа работает за время O(N), что эффективно для максимального размера массива (до 10000 элементов).
Похожие вопросы









Топ вопросов за вчера в категории Информатика









Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili