Top.Mail.Ru
Ответы

Задача по информатике, не могу понять

Робот учится петь. Пока это непростая для него задача, и не все слова получается пропеть красиво и внятно.
Роботу удобно петь слово, если в нём буквы, обозначающие согласные звуки, чередуются с буквами, обозначающими гласные.
Например, "лалала", "ахаха" и "бада бам" — это удобные строки, а "бам бам" и "тру ля ля" — нет.
Есть строка. Выведи минимальное количество букв, которые нужно заменить, чтобы роботу было удобно её пропеть. Обрати внимание — в строке может быть несколько слов, разделённых пробелами. Вся фраза целиком может оказаться неудобной для пения, несмотря на то, что каждое слово в отдельности — удобное.
Буквы, обозначающие гласные звуки: а, у, о, и, э, ы, я, ю, е, ё.
Как можно решить? Сам без понятия.

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя

somestr = input().lower().replace(' ','')
word = 'аоуэяюиыеё'
b = list()
score = 0
for i in somestr:
b.append(i)

if b[0] in word:
b.pop(0)
b.insert(0,'м')
score +=1


for j in range(len(b)-1):
if b[j] not in word and b[j + 1] not in word:
b.pop(j)
b.insert(j,'а')
score += 1
if b[j] in word and b[j + 1] in word:
b.pop(j)
b.insert(j,'м')
score += 1

print(score)

Удаленный ответ Ответ удалён
Аватар пользователя
Мудрец

Ну вот наметки.
1 убираем все пробелы.
2 все буквы делаем маленькими
3 Проверяем, что там остались только буквы (string.isalpha() python)
4 идем по буквам с шагом 2 - они ВСЕ должны быть либо in (а, у, о, и, э, ы, я, ю, е, ё) либо not in (а, у, о, и, э, ы, я, ю, е, ё)

Аватар пользователя
Ученик

s = input()

vowels = 'ауоиэыяюеё'
trans = ''
for ch in s:
if ch in vowels:
trans += 'а'
elif ch != ' ':
trans += 'б'

ex1 = 'аб' * (len(trans) // 2) + 'а' * (len(trans) % 2)
ex2 = 'ба' * (len(trans) // 2) + 'б' * (len(trans) % 2)

ans1 = 0
for k in range(len(trans)):
if trans[k] != ex1[k]:
ans1 += 1

ans2 = 0
for k in range(len(trans)):
if trans[k] != ex2[k]:
ans2 += 1

print(min(ans1, ans2))

НЕ ЗАБУДЬТЕ РАССТАВИТЬ ТАБЫ
Удачи всем в начинаниях!! <3