Вывод числа пар одинаковых элементов в списке

Пожалуйста помогите с программкой. Надо написать программу, которая запрашивает слова пока не введется пустая строка, а затем выводится количество пар.
Но нельзя использовать функции max(), sort(), count() и в таком духе, а также никакие библиотеки.

counter = 0
a = input()
while 1:
    a = input().split()
    if a == '':
        break
for i in range(len(a)):
    for j in range(i + 1, len(a)):
        if a[i] == a[j]:
            counter += 1

print(counter)

вот что у меня получился за код, но это не работает корректно и не могу найти в чем проблема.


Ответы (1 шт):

Автор решения: Jenya Gudini

У тебя условие выхода из цикла некорректное. Как вариант можно сделать так:

counter = 0
a = []
while 1:
    z = input()
    if z == '':
        break
    else:
        a.append(z)
for i in range(len(a)):
    for j in range(i + 1, len(a)):
        if a[i] == a[j]:
            counter += 1
print(counter)
→ Ссылка