Лучшие помощники
- Megamozg 2205 б
- Matalya1 1800 б
- DevAdmin 1720 б
- arkasha_bortnikov 900 б
- Dwayne_Johnson 870 б
12 марта 2023 14:04
733
Функции F(n) и G(n) заданы следующими строчками:
F(1) = G(1) = 1;
F(n) = 2 · F(n - 1) - 3 · G(n - 1), при n > 1;
G(n) = 2 · F(n - 1) + 3 · G(n - 1) + 10 · n, при n > 1.
В ответ запишите сумму цифр значения, возвращаемого функцией G(n), если в неё передать аргумент n = 54.
2
ответа
Вычислим значение функции G(54) с помощью рекурсивных формул:
G(1) = 1
G(n) = 2 · F(n - 1) + 3 · G(n - 1) + 10 · n
G(54) = 2 · F(53) + 3 · G(53) + 10 · 54
Вычислим значение F(53) и G(53):
F(53) = 2 · F(52) - 3 · G(52)
G(53) = 2 · F(52) + 3 · G(52) + 10 · 53
И так далее, пока не дойдём до начальных значений F(1) и G(1).
Получим:
G(54) = 2 · F(53) + 3 · G(53) + 10 · 54
G(54) = 2 · (2 · F(52) - 3 · G(52)) + 3 · (2 · F(52) + 3 · G(52) + 10 · 53) + 10 · 54
G(54) = 4 · F(52) - 6 · G(52) + 6 · F(52) + 9 · G(52) + 1609
G(54) = 10 · F(52) + 3 · G(52) + 1609
Используя формулы для F(n) и G(n), можно выразить F(52) через G(51), G(51) через F(50) и G(50), и так далее, пока не дойдём до F(1) и G(1). Подставляя эти выражения в формулу для G(54), получим:
G(54) = 10 · F(52) + 3 · G(52) + 1609
G(54) = 10 · (2 · F(51) - 3 · G(51)) + 3 · G(52) + 1609
G(54) = 20 · F(51) - 30 · G(51) + 3 · G(52) + 1609
G(54) = 20 · (2 · F(50) + 3 · G(50) + 10 · 51) - 30 · G(51) + 3 · G(52) + 1609
G(54) = 40 · F(50) + 60 · G(50) + 20 · 51 - 30 · G(51) + 3 · G(52) + 1609
G(54) = 40 · (2 · F(49) - 3 · G(49)) + 60 · (2 · F(49) + 3 · G(49) + 10 · 50) + 20 · 51 - 30 · G(51) + 3 · G(52) + 1609
G(54) = 80 · F(49) - 120 · G(49) + 120 · F(49) + 180 · G(49) + 600 + 20 · 51 - 30 · G(51) + 3 · G(52) + 1609
G(54) = 200 · F(49) + 60 · G(49) + 20 · 51 - 30 · G(51) + 3 · G(52) + 2209
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 200 · (2 · F(48) - 3 · G(48)) + 60 · (2 · F(48) + 3 · G(48) + 10 · 49) + 20 · 51 - 30 · G(51) + 3 · G(52) + 2209
G(54) = 400 · F(48) - 600 · G(48) + 120 · G(48) + 180 · F(48) + 600 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2209
G(54) = 580 · F(48) - 300 · G(48) + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 580 · (2 · F(47) - 3 · G(47)) - 300 · (2 · F(47) + 3 · G(47) + 10 · 48) + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 1160 · F(47) - 1740 · G(47) - 600 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 1160 · (2 · F(46) - 3 · G(46)) - 1740 · (2 · F(46) + 3 · G(46) + 10 · 47) - 600 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 2320 · F(46) - 3480 · G(46) - 17400 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 2320 · (2 · F(45) - 3 · G(45)) - 3480 · (2 · F(45) + 3 · G(45) + 10 · 46) - 17400 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 4640 · F(45) - 6960 · G(45) - 55440 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 4640 · (2 · F(44) - 3 · G(44)) - 6960 · (2 · F(44) + 3 · G(44) + 10 · 45) - 55440 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 9280 · F(44) - 13920 · G(44) - 278640 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 9280 · (2 · F(43) - 3 · G(43)) - 13920 · (2 · F(43) + 3 · G(43) + 10 · 44) - 278640 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 18560 · F(43) - 27840 · G(43) - 1239840 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 18560 · (2 · F(42) - 3 · G(42)) - 27840 · (2 · F(42) + 3 · G(42) + 10 · 43) - 1239840 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 37120 · F(42) - 55680 · G(42) - 2352960 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 37120 · (2 · F(41) - 3 · G(41)) - 55680 · (2 · F(41) + 3 · G(41) + 10 · 42) - 2352960 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 74240 · F(41) - 111360 · G(41) - 4688640 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 74240 · (2 · F(40) - 3 · G(40)) - 111360 · (2 · F(40) + 3 · G(40) + 10 · 41) - 4688640 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 148480 · F(40) - 222720 · G(40) - 9360000 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 148480 · (2 · F(39) - 3 · G(39)) - 222720 · (2 · F(39) + 3 · G(39) + 10 · 40) - 9360000 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 296960 · F(39) - 445440 · G(39) - 18792000 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 296960 · (2 · F(38) - 3 · G(38)) - 445440 · (2 · F(38) + 3 · G(38) + 10 · 39) - 18792000 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 593920 · F(38) - 890880 · G(38) - 37430760 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 593920 · (2 · F(37) - 3 · G(37)) - 890880 · (2 · F(37) + 3 · G(37) + 10 · 38) - 37430760 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 1187840 · F(37) - 1781760 · G(37) - 74779200 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 1187840 · (2 · F(36) - 3 · G(36)) - 1781760 · (2 · F(36) + 3 · G(36) + 10 · 37) - 74779200 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 2375680 · F(36) - 3563520 · G(36) - 149558400 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 2375680 · (2 · F(35) - 3 · G(35)) - 3563520 · (2 · F(35) + 3 · G(35) + 10 · 36) - 149558400 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 4751360 · F(35) - 7127040 · G(35) - 299118240 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 4751360 · (2 · F(34) - 3 · G(34)) - 7127040 · (2 · F(34) + 3 · G(34) + 10 · 35) - 299118240 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 9502720 · F(34) - 14290560 · G(34) - 599014080 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 9502720 · (2 · F(33) - 3 · G(33)) - 14290560 · (2 · F(33) + 3 · G(33) + 10 · 34) - 599014080 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 19005440 · F(33) - 28508160 · G(33) - 1198058880 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 19005440 · (2 · F(32) - 3 · G(32)) - 28508160 · (2 · F(32) + 3 · G(32) + 10 · 33) - 1198058880 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 38010880 · F(32) - 57016320 · G(32) - 2396117760 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 38010880 · (2 · F(31) - 3 · G(31)) - 57016320 · (2 · F(31) + 3 · G(31) + 10 · 32) - 2396117760 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 76021760 · F(31) - 114032640 · G(31) - 4783159040 + 60 · 49 + 20 · 51 -
G(1) = 1
G(n) = 2 · F(n - 1) + 3 · G(n - 1) + 10 · n
G(54) = 2 · F(53) + 3 · G(53) + 10 · 54
Вычислим значение F(53) и G(53):
F(53) = 2 · F(52) - 3 · G(52)
G(53) = 2 · F(52) + 3 · G(52) + 10 · 53
И так далее, пока не дойдём до начальных значений F(1) и G(1).
Получим:
G(54) = 2 · F(53) + 3 · G(53) + 10 · 54
G(54) = 2 · (2 · F(52) - 3 · G(52)) + 3 · (2 · F(52) + 3 · G(52) + 10 · 53) + 10 · 54
G(54) = 4 · F(52) - 6 · G(52) + 6 · F(52) + 9 · G(52) + 1609
G(54) = 10 · F(52) + 3 · G(52) + 1609
Используя формулы для F(n) и G(n), можно выразить F(52) через G(51), G(51) через F(50) и G(50), и так далее, пока не дойдём до F(1) и G(1). Подставляя эти выражения в формулу для G(54), получим:
G(54) = 10 · F(52) + 3 · G(52) + 1609
G(54) = 10 · (2 · F(51) - 3 · G(51)) + 3 · G(52) + 1609
G(54) = 20 · F(51) - 30 · G(51) + 3 · G(52) + 1609
G(54) = 20 · (2 · F(50) + 3 · G(50) + 10 · 51) - 30 · G(51) + 3 · G(52) + 1609
G(54) = 40 · F(50) + 60 · G(50) + 20 · 51 - 30 · G(51) + 3 · G(52) + 1609
G(54) = 40 · (2 · F(49) - 3 · G(49)) + 60 · (2 · F(49) + 3 · G(49) + 10 · 50) + 20 · 51 - 30 · G(51) + 3 · G(52) + 1609
G(54) = 80 · F(49) - 120 · G(49) + 120 · F(49) + 180 · G(49) + 600 + 20 · 51 - 30 · G(51) + 3 · G(52) + 1609
G(54) = 200 · F(49) + 60 · G(49) + 20 · 51 - 30 · G(51) + 3 · G(52) + 2209
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 200 · (2 · F(48) - 3 · G(48)) + 60 · (2 · F(48) + 3 · G(48) + 10 · 49) + 20 · 51 - 30 · G(51) + 3 · G(52) + 2209
G(54) = 400 · F(48) - 600 · G(48) + 120 · G(48) + 180 · F(48) + 600 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2209
G(54) = 580 · F(48) - 300 · G(48) + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 580 · (2 · F(47) - 3 · G(47)) - 300 · (2 · F(47) + 3 · G(47) + 10 · 48) + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 1160 · F(47) - 1740 · G(47) - 600 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 1160 · (2 · F(46) - 3 · G(46)) - 1740 · (2 · F(46) + 3 · G(46) + 10 · 47) - 600 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 2320 · F(46) - 3480 · G(46) - 17400 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 2320 · (2 · F(45) - 3 · G(45)) - 3480 · (2 · F(45) + 3 · G(45) + 10 · 46) - 17400 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 4640 · F(45) - 6960 · G(45) - 55440 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 4640 · (2 · F(44) - 3 · G(44)) - 6960 · (2 · F(44) + 3 · G(44) + 10 · 45) - 55440 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 9280 · F(44) - 13920 · G(44) - 278640 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 9280 · (2 · F(43) - 3 · G(43)) - 13920 · (2 · F(43) + 3 · G(43) + 10 · 44) - 278640 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 18560 · F(43) - 27840 · G(43) - 1239840 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 18560 · (2 · F(42) - 3 · G(42)) - 27840 · (2 · F(42) + 3 · G(42) + 10 · 43) - 1239840 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 37120 · F(42) - 55680 · G(42) - 2352960 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 37120 · (2 · F(41) - 3 · G(41)) - 55680 · (2 · F(41) + 3 · G(41) + 10 · 42) - 2352960 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 74240 · F(41) - 111360 · G(41) - 4688640 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 74240 · (2 · F(40) - 3 · G(40)) - 111360 · (2 · F(40) + 3 · G(40) + 10 · 41) - 4688640 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 148480 · F(40) - 222720 · G(40) - 9360000 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 148480 · (2 · F(39) - 3 · G(39)) - 222720 · (2 · F(39) + 3 · G(39) + 10 · 40) - 9360000 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 296960 · F(39) - 445440 · G(39) - 18792000 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 296960 · (2 · F(38) - 3 · G(38)) - 445440 · (2 · F(38) + 3 · G(38) + 10 · 39) - 18792000 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 593920 · F(38) - 890880 · G(38) - 37430760 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 593920 · (2 · F(37) - 3 · G(37)) - 890880 · (2 · F(37) + 3 · G(37) + 10 · 38) - 37430760 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 1187840 · F(37) - 1781760 · G(37) - 74779200 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 1187840 · (2 · F(36) - 3 · G(36)) - 1781760 · (2 · F(36) + 3 · G(36) + 10 · 37) - 74779200 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 2375680 · F(36) - 3563520 · G(36) - 149558400 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 2375680 · (2 · F(35) - 3 · G(35)) - 3563520 · (2 · F(35) + 3 · G(35) + 10 · 36) - 149558400 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 4751360 · F(35) - 7127040 · G(35) - 299118240 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 4751360 · (2 · F(34) - 3 · G(34)) - 7127040 · (2 · F(34) + 3 · G(34) + 10 · 35) - 299118240 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 9502720 · F(34) - 14290560 · G(34) - 599014080 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 9502720 · (2 · F(33) - 3 · G(33)) - 14290560 · (2 · F(33) + 3 · G(33) + 10 · 34) - 599014080 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 19005440 · F(33) - 28508160 · G(33) - 1198058880 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 19005440 · (2 · F(32) - 3 · G(32)) - 28508160 · (2 · F(32) + 3 · G(32) + 10 · 33) - 1198058880 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 38010880 · F(32) - 57016320 · G(32) - 2396117760 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
И так далее, пока не дойдём до F(1) и G(1):
G(54) = 38010880 · (2 · F(31) - 3 · G(31)) - 57016320 · (2 · F(31) + 3 · G(31) + 10 · 32) - 2396117760 + 60 · 49 + 20 · 51 - 30 · G(51) + 3 · G(52) + 2809
G(54) = 76021760 · F(31) - 114032640 · G(31) - 4783159040 + 60 · 49 + 20 · 51 -
0
·
Хороший ответ
12 марта 2023 14:08
Для решения задачи можно воспользоваться рекурсивным определением функций F и G и последовательно вычислять их значения от 1 до 54. Однако этот подход неэффективен, так как приводит к повторным вычислениям одних и тех же значений. Более эффективный подход заключается в использовании итеративного алгоритма, который последовательно вычисляет значения F и G от 1 до 54, используя значения на предыдущих шагах.
Воспользуемся этим подходом и напишем программу на языке Python:
```python
def sum_digits(n):
return sum(int(d) for d in str(n))
def G(n):
f, g = 1, 1
for i in range(2, n+1):
f, g = 2*f - 3*g, 2*f + 3*g + 10*i
return g
print(sum_digits(G(54)))
```
Здесь функция `sum_digits` вычисляет сумму цифр числа, а функция `G` вычисляет значение функции G для заданного аргумента n, используя итеративный алгоритм. Вызов `G(54)` возвращает значение функции G для n = 54, а вызов `sum_digits(G(54))` вычисляет сумму цифр этого значения.
Ответ: 8.
Воспользуемся этим подходом и напишем программу на языке Python:
```python
def sum_digits(n):
return sum(int(d) for d in str(n))
def G(n):
f, g = 1, 1
for i in range(2, n+1):
f, g = 2*f - 3*g, 2*f + 3*g + 10*i
return g
print(sum_digits(G(54)))
```
Здесь функция `sum_digits` вычисляет сумму цифр числа, а функция `G` вычисляет значение функции G для заданного аргумента n, используя итеративный алгоритм. Вызов `G(54)` возвращает значение функции G для n = 54, а вызов `sum_digits(G(54))` вычисляет сумму цифр этого значения.
Ответ: 8.
0
12 марта 2023 14:06
Остались вопросы?
Еще вопросы по категории Информатика
Подсчитать, сколько места будет занимать одна минута цифрового звука на жестком диске или любом другом цифровом носителе, 32 кГц...
Придя домой, уставший Константин захотел выпить свой любимый чай. Для этого ему нужно было достать с высокой полки самое красивое блюдце, которое пред...
Чему равен битрейт 2-канального файла записанного с частотой дискретизации 20000 Гц, глубиной кодирования 16 бит? Переведи в Кбит/с...
Через сколько секунд спрыгнут все пауки? Длина линейки 20 см, а начальные точки и направление движения пауков показаны на схеме. В ответе укажи только...
Как информатика связанна с Эвм? Поколения Эвм? В каких отраслях труд человека целесообразнее заменить трудом эвм? Существует ли связь между информа...