@Azamgl

Не могу понять цикл работы программы?

spisok = [1, 2, 3, 2, 3]
print(spisok)
spisok.sort()
n = len(spisok)
i=0
for l in range(n-1):
    for j in range(n-l-1):
        if spisok[j]==spisok[j+1]:
            i+=1
print(i)


Чтобы найти пары, я использовал метод пузыря, но не могу понять почему количество пар не правильное. Допустим в этом коде он показывает что пары 4, а не 2. Но в коде, где все элементы одинаковые и их допустим пять он правильно высчитывает количество пар - 10.
  • Вопрос задан
  • 42 просмотра
Решения вопроса 1
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
Если я правильно понял цель, то что-то такое должно быть:
for l in range(n-1):
    for j in range(l+1, n):
        if spisok[l]==spisok[j]:
            i+=1
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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