2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Задача по комбинаторике
Сообщение01.09.2012, 20:49 
Помогите, пожалуйста, со следующей задачей:

В языке африканского племени три буквы — 0, 1 и 2. Известно, что в словах сумма трёх подряд идущих букв не может превышать 4.
1. Сколько в языке этого племени слов длиной 5 букв?
2. Сколько в языке этого племени слов длиной 20 букв?

Совсем не знаю, как здесь рассуждать( Всего слов из пяти букв 243. Дальше пыталась посчитать исключения (это все слова, которые содержат 222, 221, 212, 122), но никакого метода, кроме фактически перебора, в голову не приходит. Исключений получилось 72, итого ответ на первый вопрос 171.
Очевидно, что искать ответ на второй вопрос таким способом - не вариант. Подскажите, пожалуйста, в каком направлении надо рассуждать? Буду благодарна любым идеям и подсказкам!

 
 
 
 Re: Задача по комбинаторике
Сообщение01.09.2012, 22:52 
Сначала рассмотрим все слова из $n$ букв, причем множество букв - $\{0; 1; 2\}$.
После этого введем условно новую букву - "222", и рассмотрим количество слов из $n-2$ букв, которые содержат эту новую букву. Обозначим это число $X$.
Дальше умножим число $X$ на количество исключений, и вычтем из максимального числа слов

 
 
 
 Re: Задача по комбинаторике
Сообщение01.09.2012, 23:56 
Balantay, если $X$ - это "количество слов из $n-2$ букв, которые содержат эту новую букву", то что тогда исключения?

Таким способом мы посчитаем все слова, содержащие "222"? А дальше подсчитывать все, содержащие другие "запретные" последовательности? Так ведь эти множества будут пересекаться..

 
 
 
 Re: Задача по комбинаторике
Сообщение02.09.2012, 12:07 
Сначала посчитали без учета условия.
Исключениями я назвал множество $\{222; 221; 212; 122\}$ - всего 4 штуки
По поводу пересечений - согласен, тут у меня недочет, нужны дополнительные условия.
Например, мы можем посчитать исключениями все слова, где встречается "22", а потом вернуть те, где идет "0220" (в начало и конец слова виртуально дописываем по нулю). Надо только как-то при этом следить, чтобы "0220" было столько же, как и "22".
После этого мы без пересечения сможем посчитать "212"

 
 
 [ Сообщений: 4 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group