Найти - Пользователи
Полная версия: с задачей помогите плиззз
Начало » Python для новичков » с задачей помогите плиззз
1
dima757
Дан список, упорядоченный по неубыванию элементов в нем. Определите, сколько в нем различных элементов.
a = [int(i) for i in input().split()]
n = 0
for i in range(len(a)):
    if a[i] != a[i + 1]:
        n += 1
print(n)    
на пример 1 2 3 4 8, выводит 5
Firik
Что не получается?
dima757
выводит меньше чем есть в списке
a = [int(i) for i in input().split()]
n = 0
b = 0
for i in range(len(a)):
if a[i] != a[n]:
n = i
b += 1
print(n)
marvellik
а множества в помощь? или еще не знаком?
dima757
ещё не дошёл до множеств
marvellik
dima757
на пример 1 2 3 4 8, выводит 5
так оно и есть элементов то 5 и все различны. в чем проблема?
dima757
если взять другой список, то выводит фигню 1 2 3 4 5 - 4
1 1 2 2 2 3 4 5 6 7 - 9
marvellik
a = [int(i) for i in input().split()]
num_distinct = 1
for i in range(0, len(a) - 1):
    if a[i] != a[i + 1]:
        num_distinct += 1
print(num_distinct)
или так
a = [int(i) for i in input().split()]
b = []
for i in a:
    if i not in b:
        b.append(i)
print(len(b))
dima757
marvellik спасибо!!!!
Vigi
print(len(set(list(map(int, input().split())))))
?

Для наглядности:
lst = [1, 2, 3, 4, 5]
print(len(set(lst)))
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB