Вопрос задан 01.10.2023 в 17:22. Предмет Информатика. Спрашивает Хайлова Катя.

Удаление дубликатов Напишите программу, которая выполняет "сжатие массива" – заполняет все копии

уже ранее встречавшихся элементов нулями и переставляет все нулевые элементы в конец массива. При этом все оставшиеся элементы располагаются в начале массива в том же порядке, что и в исходном массиве. Входные данные Первая строка содержит размер массива N . Во второй строке через пробел задаются N чисел – элементы массива. Гарантируется, что 0 < N ≤ 10000 . Выходные данные Программа должна вывести в одну строчку все элементы получившегося массива, разделив их пробелами. Примеры входные данные 6 0 1 2 1 2 3 выходные данные 1 2 3 0 0 0
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Ахмедияров Мадияр.

##

var n := ReadInteger;

var a := ReadArrInteger(n); // массив создан

a := a.Where(t -> t > 0).Distinct.ToArray;

SetLength(a, n);

a.Print


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вы можете решить эту задачу на языке программирования Python. Вот пример программы:

python
# Считываем размер массива N N = int(input()) # Считываем элементы массива arr = list(map(int, input().split())) # Создаем словарь для отслеживания уникальных элементов и их индексов unique_elements = {} result = [] # Проходим по элементам массива for num in arr: # Если элемент уже был встречен, добавляем 0 в результат if num in unique_elements: result.append(0) else: # В противном случае, добавляем элемент в результат и обновляем индекс в словаре unique_elements[num] = len(result) result.append(num) # Перемещаем все нули в конец массива result.sort(key=lambda x: x == 0) # Выводим результат print(*result)

Пример ввода и вывода:

Входные данные: 6 0 1 2 1 2 3 Выходные данные: 1 2 3 0 0 0

Эта программа сначала создает словарь unique_elements, чтобы отслеживать уникальные элементы и их индексы. Затем она проходит по элементам исходного массива, добавляя их в result и обновляя словарь, если элемент уже встречался. После этого она сортирует result, перемещая все нули в конец.

0 0

Похожие вопросы

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

Последние заданные вопросы в категории Информатика

Задать вопрос