Напишите программу, которая подсчитывает, сколько различных чисел содержится в данном...

0 голосов
41 просмотров

Напишите программу, которая подсчитывает, сколько различных чисел содержится в данном списке.

ВХОДНЫЕ ДАННЫЕ
Программа получает на вход несколько чисел (не более 1000), записанных в одной строке через пробел. Все числа по модулю не превосходят 10^{9} .

ВЫХОДНЫЕ ДАННЫЕ
Программа должна вывести единственное число - количество различных чисел среди данных.

ПРИМЕР
ВВОД ВЫВОД
2 5 1 3 1 5
(python)


Информатика (94 баллов) | 41 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

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

a = list(map(int, input().split()))

count = 1

a.sort()

for i in range(len(a) - 1):

    if a[i] != a[i + 1]:

        count += 1

print(count)

Но проще всего преобразовать массив в множество (set):

a = set(map(int, input().split()))

print(len(a))

(148k баллов)