В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
Arina1518
Arina1518
28.07.2021 12:59 •  Информатика

Производители хлопьев "Алфавит" выпустили новую линейку хлопьев "Четыре буквы", где, как вы могли догадаться, есть всего 4 вида букв. Ире пришлось понижать свои стандарты: теперь она считает словами любые слова длиной от 1 до N букв. Сколько слов она сможет составить на этот раз? python

Показать ответ
Ответ:
bogdanka1503p08ifa
bogdanka1503p08ifa
15.10.2020 15:26

Алгоритм: на каждой позиции может быть одна из четырёх букв. Значит, если слово состоит из k букв, то количество слов ровно 4^k, Значит, всего слов 4 + 4² + 4³ + ... + 4ⁿ. Можно реализовать цикл сложностью O(n), а можно преобразовать выражение, ведь оно представляет собой сумму членов геометрической прогрессии: 4+4^2+4^3+...+4^N=\dfrac{4\cdot(4^N-1)}{4-1}=\dfrac{4\cdot(4^N-1)}{3}. Тогда сложность алгоритма составит O(1), если не считать операцию возведения в степень.

Программа:

print((4*(4**(int(input()))-1))//3)

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота