Статья Автор: Лебедев Дмитрий Алексеевич

Две функции

Алгоритм вычисления значения функции F(n) и G(n), где n – натуральное число, задан следующими соотношениями:

G(n)=F(n)=1 при n<3
F(n)=G(n)+F(n−1) при n>2 и n четно
F(n)=F(n−2)−2⋅G(n+1) при n>2 и n нечетно
G(n)=F(n−3)+F(n−2) при n>2 и n четно
G(n)=F(n+1)−G(n−1) при n>2 и n нечетно

Чему равно значение функции G(120)? В ответе запишите только целое число.


Рассмотрим простое решение на Python с использованием словарей.
(в целом - это переписывание условия)
Вопрос - Какие бы сложности возникли, если вместо словарей использовались бы списки? 
 


Как перевести это решение на C++?
Для этого надо:
  • создать "словари" - то есть ассоциативные массивы (map)
  • передавать их в подпрограммы - по ссылкам (для изменения)
  • объявить функции (до вызова)


Алгоритм вычисления функций F(n) задан следующими соотношениями:

F(n)=1 при n=0
F(n)=2⋅F(1−n)+3⋅F(n−1)+2 при n>0
F(n)=−F(−n) + 2 * n при n<0n<0

Чему равна сумма цифр значения функции F(50))?


Печать