t = 0
for ch in input().lower():
if ch.isalpha(): t += [-1, 1][ch in 'aeiouy']
print({-1: 'B', 1: 'A', 0: '='}[(t > 0) - (t < 0)])
Два счётчика не требуются. Достаточно одного: встретили гласную - увеличиваем на 1, встретили согласную - уменьшаем на 1. И после цикла проверяем знак счётчика.
Сам написал такой код но он не подходит под все тесты:
def count_vowels_and_consonants(s):
vowels = "aeiouyAEIOUY"
vowel_count = 0
consonant_count = 0
for char in s.lower(): # Приводим к нижнему регистру для удобства
if char.isalpha(): # Проверяем, является ли символ буквой
if char in vowels:
vowel_count += 1
else:
consonant_count += 1
return vowel_count, consonant_count
def compare_vowels_and_consonants(s):
vowel_count, consonant_count = count_vowels_and_consonants(s)
if vowel_count > consonant_count:
return "А"
elif consonant_count > vowel_count:
return "В"
else:
return "="
# Пример использования
input_string = input()
result = compare_vowels_and_consonants(input_string)
print(result)