Формулировка Excel / таблица - PullRequest
0 голосов
/ 24 января 2012

Ученые из научно-исследовательского института робототехники создали робота нового типа, который воспроизводит себя сам.Новый робот собирает материалы в течение двух недель, а затем строит одного нового робота (в точности как он сам) каждую неделю в течение трех недель.Первый новый робот активируется в конце недели 3, второй новый робот активируется в конце недели 4 и третий новый робот в конце недели 5. Как только он создается, каждый новый робот проходит черезтот же цикл сбора материалов в течение двух недель с последующим созданием трех новых роботов, по одному в неделю.И так для каждого из новых роботов.По истечении первых пяти недель своего существования каждый новый робот прекращает создавать новых роботов, но уходит на пенсию и живет вечно.Ученые планируют собрать только одного робота своими руками, а затем привести его в движение.Создайте таблицу Excel, которая сообщит вам, сколько роботов будет через 2 года.

У меня есть поиск, но ответа было недостаточно, чтобы помочь мне понять это.любая помощь там?

1 Ответ

0 голосов
/ 10 марта 2012

@ yosukesabai совершенно прав - это проблема цепи Маркова, и как только вы решите, как настроить матрицу переходов, ее очень легко решить. Если мы знаем, сколько роботов каждого возраста у нас имеется в конце каждой недели (в полных неделях, ограниченных 5), мы можем использовать матрицу переходов для расчета количества роботов каждого возраста в конце следующей недели.

Матрицу перехода можно записать так:

0   1   0   0   0   0
0   0   1   0   0   0
1   0   0   1   0   0
1   0   0   0   1   0
1   0   0   0   0   1
0   0   0   0   0   1

Для каждого робота возраста y в конце недели в конце следующей недели будет T (x, y) роботов возраста x (x = номер столбца, y = номер строки, оба начинаются с 0). Все записи заполняются в соответствии с описанием головоломки.

Исходным состоянием на неделе 0 является одиночный робот возраста 0, и никаких других роботов других возрастов нет. Это может быть представлено как вектор строки:

1   0   0   0   0   0

Теперь вы можете использовать функцию MMULT для перехода с нулевой недели на первую. Если вы поместите матрицу перехода в ячейки J2: O7 и вектор для недели 0 в ячейки B3: G3, ее можно ввести как:

=MMULT(B3:G3,$J$2:$O$7)

Это необходимо ввести как формулу массива. Выберите ячейки B4: G4, нажмите F2 , введите формулу и нажмите Ctrl + Shift + Enter . Теперь вы должны увидеть следующее в B4: G4:

0   1   0   0   0   0

Затем вы можете скопировать и вставить эти ячейки в следующие 103 строки, чтобы увидеть, какими роботами вы пользуетесь через 2 года. Я получаю 5 369 858 819 104 в конце недели 104.

...