№16 — примеры решений

Один эталонный разбор.

Алгоритм вычисления функций F(n) и G(n), где n - целое число, задан следующими соотношениями: F(n) = F(n − 4) + 3580, если n ≥ 19; F(n) = 6 × (G(n − 7) − 36), если n < 19; G(n) = n/20 + 28, если n ≥ 248045; G(n) = G(n + 9) − 4, если n < 248045. Чему равно значение функции F(673)? В ответе запишите целую часть полученного числа.
def g(n):
    steps = (248045 - n + 8) // 9 if n < 248045 else 0
    n_end = n + 9 * steps if n < 248045 else n
    return n_end / 20 + 28 - 4 * steps
def f(n):
    k = (n - 15) // 4
    n0 = n - 4 * k
    return int(6 * (g(n0 - 7) - 36) + 3580 * k)
print(f(673))
Ответ:47
📚 Все задачи с разбором 106
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = n × F(n − 1), если n > 1. Чему равно значение выражения (F(2024) − 5 × F(2023)) / F(2022)? В ответе запишите целую часть полученного числа.
# F(n)=n!, F(2024)-5*F(2023)=(2024-5)*F(2023)=2019*2023*F(2022)
# (F(2024)-5*F(2023))//F(2022) = 2019*2023
print(2019 * 2023)
Ответ:4084437
Алгоритм вычисления значения функции F(n), где n — целое число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = n * F(n − 1) при n > 1. В ответе запишите целую часть полученного числа.
Чему равно значение выражения (F(2024) − 2 * F(2023)) / F(2022)? В ответ запишите целую часть полученного числа
# F(n)=n!, F(2024)-2*F(2023)=(2024-2)*F(2023)=2022*2023*F(2022)
# result = 2022*2023
print(2022 * 2023)
Ответ:4090506
Алгоритм вычисления значения функции F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2 × (G(n − 3) + 8); G(n) = 2 × n, если n < 10. G(n) = G(n − 2) + 1, если n ≥ 10. В ответе запишите целую часть полученного числа.
Чему равно значение выражения F(15548)?
g = {}
for n in range(16000):
    if n < 10:
        g[n] = 2 * n
    else:
        g[n] = g[n - 2] + 1
print(2 * (g[15545] + 8))
Ответ:15588
Алгоритм вычисления значения функции F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2 × (G(n − 3) + 8); G(n) = 2 × n, если n < 10. G(n) = G(n − 2) + 1, если n ≥ 10. В ответе запишите целую часть полученного числа.
Чему равно значение выражения F(15548)?
g = {}
for n in range(16000):
    if n < 10:
        g[n] = 2 * n
    else:
        g[n] = g[n - 2] + 1
print(2 * (g[15545] + 8))
Ответ:15588
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = n × F(n − 1), если n > 1. В ответе запишите целую часть полученного числа.
Чему равно значение выражения (F(2024) / 4 + F(2023)) / F(2022)?
# F(n)=n!, (F(2024)/4+F(2023))//F(2022)
# = (2024*2023!/4 + 2023!)//2022! = 2023*(2024//4+1) = 2023*507
print(2023 * 507)
Ответ:1025661
Алгоритм вычисления значения функции F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2 × (G(n − 3) + 8); G(n) = 2 × n, если n < 10. G(n) = G(n − 2) + 1, если n ≥ 10. В ответе запишите целую часть полученного числа.
Чему равно значение выражения F(15548)?
g = {}
for n in range(16000):
    if n < 10:
        g[n] = 2 * n
    else:
        g[n] = g[n - 2] + 1
print(2 * (g[15545] + 8))
Ответ:15588
Алгоритм вычисления значения функции F(n), где n – целое число, задан следующими соотношениями: F(n) = n при n < 20; F(n) = (n − 6) × F(n−7), если n ≥ 20. В ответе запишите целую часть полученного числа.
Чему равно значение выражения (F(47872) − 290 × F(47865))/F(47858)?
# F(n)=(n-6)*F(n-7), F(47872)/F(47858)=(47872-6)*(47865-6)=47866*47859
# (F(47872)-290*F(47865))//F(47858) = 47866*47859 - 290*47859 = 47859*(47866-290)
print(47859 * (47866 - 290))
Ответ:2276939784
Алгоритм вычисления значения функции F(n), где n – целое число, задан следующими соотношениями: F(n) = n при n ≥ 2025; F(n) = n × 2 + F(n + 2), если n < 2025. В ответе запишите целую часть полученного числа.
Чему равно значение выражения F(82)−F(81)?
f = {}
for n in range(2026, 78, -1):
    f[n] = n if n >= 2025 else n * 2 + f[n + 2]
print(f[82] - f[81])
Ответ:1945
Алгоритм вычисления значения функции F(n), где n – целое число, задан следующими соотношениями: F(n) = n при n < 10; F(n) = 3n + F(n − 3), если n ≥ 10. В ответе запишите целую часть полученного числа.
Чему равно значение выражения (F(6250) + 2 × F(6244))/F(6238)? В ответе запишите целую часть полученного числа
f = {}
for i in range(10):
    f[i] = i
for i in range(10, 6260):
    f[i] = 3 * i + f[i - 3]
print((f[6250] + 2 * f[6244]) // f[6238])
Ответ:3
Алгоритм вычисления значения функции F(n) и G(n), где n – целое число, задан следующими соотношениями: F(n) = 2 × (G(n − 3) + 8); G(n) = 2 × n, если n < 10. G(n) = G(n − 2) + 1, если n ≥ 10. В ответе запишите целую часть полученного числа.
Чему равно значение выражения F(15548)?
g = {}
for n in range(16000):
    if n < 10:
        g[n] = 2 * n
    else:
        g[n] = g[n - 2] + 1
print(2 * (g[15545] + 8))
Ответ:15588
Алгоритм вычисления значения функции F(n) и G(n), где n – целое число, задан следующими соотношениями: F(n) = G(n − 1) + G(n − 3); G(n) = 3 × n, если n ≤ 9. G(n) = G(n − 4) + 2, если n > 9. В ответе запишите целую часть полученного числа.
Чему равно значение выражения F(42999)?
g = {}
for n in range(43100):
    if n <= 9:
        g[n] = 3 * n
    else:
        g[n] = g[n - 4] + 2
print(g[42998] + g[42996])
Ответ:43032
Алгоритм вычисления значения функции, где n – натуральное число, задан следующими соотношениями: F(n) = G(n-3) G(n) = n при n <= 20 G(n) = G(n-2)+1 при n > 20 В ответе запишите целую часть полученного числа.
Чему равно значение функции F(25000)?
g = {}
for n in range(25100):
    if n <= 20:
        g[n] = n
    else:
        g[n] = g[n - 2] + 1
print(g[24997])
Ответ:12508
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n − 1) G(n) = 3 × n, если n ≤ 9 G(n) = G(n − 2) + 1, если n > 9 В ответе запишите только целое число.
Чему равно значение выражения F(47995)? В ответе запишите целую часть полученного числа.
g = {}
for n in range(48100):
    if n <= 9:
        g[n] = 3 * n
    else:
        g[n] = g[n - 2] + 1
print(g[47994])
Ответ:24017
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = (n – 1) × F(n – 1), если n > 1. В ответе запишите целую часть полученного числа.
Чему равно значение выражения (F(2024) + 2 × F(2023))/F(2022)?
# F(n)=(n-1)*F(n-1), F(2024)=2023*F(2023)=2023*2022*F(2022)
# (F(2024)+2*F(2023))//F(2022) = (2023*2022+2*2022) = 2022*(2023+2) = 2022*2025
print(2022 * 2025)
Ответ:4094550
Алгоритм вычисления функции F(n), где n — целое число, задан следующими соотношениями: F(n) = n, если n < 5; F(n) = 2n × F(n − 4), если n ≥ 5. В ответе запишите целую часть полученного числа.
Чему равно значение функции (F(13766) − 9 × F(13762)) // F(13758)?
# F(n)=2n*F(n-4): F(13766)=2*13766*F(13762), F(13762)=2*13762*F(13758)
# (F(13766)-9*F(13762))//F(13758) = 4*13766*13762 - 9*2*13762 = 13762*(4*13766-18)
print(13762 * (4 * 13766 - 18))
Ответ:757543052
Алгоритм вычисления значения функции F(n), где n - натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = (3n + 5) * F(n - 1), если n > 1. Чему равно значение выражения F(2073) / F(2070)? В ответе запишите только целое число.
from functools import *
@lru_cache(None)
def f(n):
    if n == 1:
        return 1
    if n > 1:
        return (3 * n + 5) * f(n - 1)
for q in range(2100):
    f(q)
print(f(2073) // f(2070))
Ответ:240757875872
Алгоритм вычисления значения функции F(n), где n - натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = (2n - 1) * F(n - 1), если n > 1. Чему равно значение выражения F(3516) / F(3513)? В ответе запишите только целое число.
from functools import *
@lru_cache(None)
def f(n):
    if n == 1:
        return 1
    if n > 1:
        return (2 * n - 1) * f(n - 1)
for q in range(3600):
    f(q)
print(f(3516) // f(3513))
Ответ:347280657273
Алгоритм вычисления значения функции F(n), где n - натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = n * F(n - 1) + 1 если n > 1. Чему равно значение выражения F(3303) / F(3300)? В ответе укажите только целую часть числа.
from functools import *
@lru_cache(None)
def f(n):
    if n == 1:
        return 1
    if n > 1:
        return n * f(n - 1) + 1
for i in range(3400):
    f(i)
print(f(3303) // f(3300))
Ответ:36002376306
Алгоритм вычисления значения функции F(n), где n - натуральное число, задан следующими соотношениями: F(n) = 1 если n < 4, F(n) = n если n > 3 и число n нечётное, F(n) = F(n - 1) + F(n - 2) + F(n - 3) если n > 3 и число n чётное. Чему равно значение выражения F(2254) - F(2252)? В ответе запишите только целое число.
from functools import *
@lru_cache(None)
def f(n):
    if n < 4:
        return 1
    if n > 3 and n % 2 != 0:
        return n
    if n > 3 and n % 2 == 0:
        return f(n - 1) + f(n - 2) + f(n - 3)
for i in range(2300):
    f(i)
print(f(2254) - f(2252))
Ответ:4504
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = (4n + 3) × F(n − 1), если n > 1. Чему равно значение выражения F(1503) / F(1500)? В ответе запишите только целое число.
result = 1
for i in range(1501, 1504):
    result *= (4 * i + 3)
print(result)
Ответ:217190083155
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = (5n − 2) × F(n − 1), если n > 1. Чему равно значение выражения F(2002) / F(1999)? В ответе запишите только целое число.
result = 1
for i in range(2000, 2003):
    result *= (5 * i - 2)
print(result)
Ответ:1000900019952
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = (2n + 7) × F(n − 1), если n > 1. Чему равно значение выражения F(3005) / F(3003)? В ответе запишите только целое число.
result = 1
for i in range(3004, 3006):
    result *= (2 * i + 7)
print(result)
Ответ:36192255
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = n × F(n − 1) + 2, если n > 1. Чему равно значение выражения F(2503) / F(2500)? В ответе укажите только целую часть числа.
f = {1: 1}
for n in range(2, 2504):
    f[n] = n * f[n-1] + 2
print(f[2503] // f[2500])
Ответ:15662527506
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = (n + 1) × F(n − 1) + 1, если n > 1. Чему равно значение выражения F(1804) / F(1801)? В ответе укажите только целую часть числа.
f = {1: 1}
for n in range(2, 1805):
    f[n] = (n + 1) * f[n-1] + 1
print(f[1804] // f[1801])
Ответ:5870964660
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n < 5; F(n) = n + 2, если n ≥ 5 и число n нечётное; F(n) = F(n − 1) + F(n − 2) + F(n − 3), если n ≥ 5 и число n чётное. Чему равно значение выражения F(1800) − F(1798)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return 1
    if n % 2 != 0:
        return n + 2
    return f(n - 1) + f(n - 2) + f(n - 3)
for i in range(1900):
    f(i)
print(f(1800) - f(1798))
Ответ:3600
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 2 при n < 4; F(n) = n, если n ≥ 4 и число n чётное; F(n) = F(n − 1) + F(n − 2) + F(n − 3), если n ≥ 4 и число n нечётное. Чему равно значение выражения F(1705) − F(1701)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 4:
        return 2
    if n % 2 == 0:
        return n
    return f(n - 1) + f(n - 2) + f(n - 3)
for i in range(1800):
    f(i)
print(f(1705) - f(1701))
Ответ:6808
Алгоритм вычисления значения функции F(n), где n — неотрицательное целое число, задан следующими соотношениями: F(n) = 0 при n = 0; F(n) = F(n / 2) − 2, если n > 0 и число n чётное; F(n) = F(n − 1) + 3, если n > 0 и число n нечётное. Сколько существует значений n, не превышающих 999, для которых F(n) = 4? В ответе запишите только целое число.
from functools import lru_cache
d = []
@lru_cache(None)
def f(n):
    if n == 0:
        return 0
    if n > 0 and n % 2 == 0:
        return f(n // 2) - 2
    if n > 0 and n % 2 != 0:
        return f(n - 1) + 3
for n in range(1000):
    if f(n) == 4:
        d.append(n)
print(len(d))
Ответ:26
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n < 3; F(n) = F(n − 1) + n, если n ≥ 3 и число n чётное; F(n) = F(n − 2) + 2n + 1, если n ≥ 3 и число n нечётное. Чему равно значение выражения F(2048) − F(2043)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 3:
        return 1
    if n % 2 == 0:
        return f(n - 1) + n
    return f(n - 2) + 2 * n + 1
for i in range(2100):
    f(i)
print(f(2048) - f(2043))
Ответ:10234
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = n при n ≤ 4; F(n) = F(n − 2) + n / 2 − F(n − 4), если n > 4 и число n чётное; F(n) = F(n − 1) + F(n − 2) + n, если n > 4 и число n нечётное. Чему равно значение выражения F(3200) + F(3204) − F(3208)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n <= 4:
        return n
    if n > 4 and n % 2 == 0:
        return f(n - 2) + n // 2 - f(n - 4)
    if n > 4 and n % 2 != 0:
        return f(n - 1) + f(n - 2) + n
for n in range(1, 3300):
    f(n)
print(f(3200) + f(3204) - f(3208))
Ответ:1597
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n ≤ 2; F(n) = F(n − 1) + 2n, если n > 2 и число n чётное; F(n) = F(n − 2) + 3n, если n > 2 и число n нечётное. Чему равно значение выражения F(4096) − F(4089)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n <= 2:
        return 1
    if n % 2 == 0:
        return f(n - 1) + 2 * n
    return f(n - 2) + 3 * n
for i in range(4200):
    f(i)
print(f(4096) - f(4089))
Ответ:45029
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n < 4; F(n) = n, если n ≥ 4 и число n нечётное; F(n) = F(n − 2) + n, если n ≥ 4 и число n чётное. Чему равно значение выражения F(2400) − F(2396)? В ответе запишите только целое число.
f = {}
for i in range(2410):
    if i < 4:
        f[i] = 1
    elif i % 2 != 0:
        f[i] = i
    else:
        f[i] = f[i - 2] + i
print(f[2400] - f[2396])
Ответ:4798
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 2 при n ≤ 3; F(n) = F(n − 1) × (n − 1), если n > 3 и число n чётное; F(n) = F(n − 2) × (n + 1), если n > 3 и число n нечётное. Чему равно значение выражения F(18) / F(14)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n <= 3:
        return 2
    if n % 2 == 0:
        return f(n - 1) * (n - 1)
    return f(n - 2) * (n + 1)
print(f(18) // f(14))
Ответ:376
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = n × F(n − 1) + n, если n > 1 и число n чётное; F(n) = (n + 1) × F(n − 1) − 1, если n > 1 и число n нечётное. Чему равно значение выражения F(1203) / F(1200)? В ответе укажите только целую часть числа.
f = {1: 1}
for n in range(2, 1204):
    if n % 2 == 0:
        f[n] = n * f[n-1] + n
    else:
        f[n] = (n + 1) * f[n-1] - 1
print(f[1203] // f[1200])
Ответ:1739544015
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 0 при n = 0; F(n) = F(n // 2) + 1, если n > 0 и число n делится на 2; F(n) = F(n − 1) − 1, если n > 0 и число n нечётное. Сколько существует значений n, не превышающих 2000, для которых F(n) = 0? В ответе запишите только целое число.
from functools import lru_cache
d = []
@lru_cache(None)
def f(n):
    if n == 0:
        return 0
    if n % 2 == 0:
        return f(n // 2) + 1
    return f(n - 1) - 1
for n in range(2001):
    if f(n) == 0:
        d.append(n)
print(len(d))
Ответ:50
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n ≤ 2; F(n) = F(n − 2) + (n + 2) // 2, если n > 2 и число n чётное; F(n) = F(n − 1) + n, если n > 2 и число n нечётное. Чему равно значение выражения F(3001) − F(2998)? В ответе запишите только целое число.
f = {}
for i in range(3010):
    if i <= 2:
        f[i] = 1
    elif i % 2 == 0:
        f[i] = f[i - 2] + (i + 2) // 2
    else:
        f[i] = f[i - 1] + i
print(f[3001] - f[2998])
Ответ:4502
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n < 3; F(n) = F(n − 1) + n², если n ≥ 3 и число n чётное; F(n) = F(n − 2) + 2n, если n ≥ 3 и число n нечётное. Чему равно значение выражения F(2500) − F(2495)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 3:
        return 1
    if n % 2 == 0:
        return f(n - 1) + n * n
    return f(n - 2) + 2 * n
for i in range(2600):
    f(i)
print(f(2500) - f(2495))
Ответ:6259992
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n ≤ 3; F(n) = F(n − 1) + n, если n > 3 и число n нечётное; F(n) = F(n − 2) + 2 × (n + 1), если n > 3 и число n чётное. Чему равно значение выражения F(2201) − F(2197)? В ответе запишите только целое число.
f = {}
for i in range(2210):
    if i <= 3:
        f[i] = 1
    elif i % 2 != 0:
        f[i] = f[i - 1] + i
    else:
        f[i] = f[i - 2] + 2 * (i + 1)
print(f[2201] - f[2197])
Ответ:8804
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 2 при n ≤ 4; F(n) = F(n − 1) × n + 1, если n > 4 и число n чётное; F(n) = F(n − 2) × (n − 1), если n > 4 и число n нечётное. Чему равно значение выражения F(16) / F(12)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n <= 4:
        return 2
    if n % 2 == 0:
        return f(n - 1) * n + 1
    return f(n - 2) * (n - 1)
print(f(16) // f(12))
Ответ:223
Алгоритм вычисления значения функции F(n), где n — неотрицательное целое число, задан следующими соотношениями: F(n) = 0 при n = 0; F(n) = F(n // 3) + 2, если n > 0 и число n делится на 3; F(n) = F(n − 1) − 1, если n > 0 и число n не делится на 3. Сколько существует значений n, не превышающих 3000, для которых F(n) = 1? В ответе запишите только целое число.
from functools import lru_cache
d = []
@lru_cache(None)
def f(n):
    if n == 0:
        return 0
    if n % 3 == 0:
        return f(n // 3) + 2
    return f(n - 1) - 1
for n in range(3001):
    if f(n) == 1:
        d.append(n)
print(len(d))
Ответ:162
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = n при n ≤ 5; F(n) = F(n − 2) + n // 2 − F(n − 4), если n > 5 и число n чётное; F(n) = F(n − 1) + F(n − 3) + n, если n > 5 и число n нечётное. Чему равно значение выражения F(4001) + F(4005) − F(4009)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n <= 5:
        return n
    if n % 2 == 0:
        return f(n - 2) + n // 2 - f(n - 4)
    return f(n - 1) + f(n - 3) + n
for i in range(1, 4100):
    f(i)
print(f(4001) + f(4005) - f(4009))
Ответ:7998
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = (2n + 1) × F(n − 1), если n > 1 и число n чётное; F(n) = (n + 2) × F(n − 1), если n > 1 и число n нечётное. Чему равно значение выражения F(1004) / F(1001)? В ответе запишите только целое число.
# F(1004)/F(1001) = F(1002)/F(1001) * F(1003)/F(1002) * F(1004)/F(1003)
# n=1002 even: (2*1002+1)=2005; n=1003 odd: (1003+2)=1005; n=1004 even: (2*1004+1)=2009
print(2005 * 1005 * 2009)
Ответ:4048185225
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n < 4; F(n) = F(n − 1) + n − 1, если n ≥ 4 и число n чётное; F(n) = F(n − 2) + 2n + 3, если n ≥ 4 и число n нечётное. Чему равно значение выражения F(5000) − F(4993)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 4:
        return 1
    if n % 2 == 0:
        return f(n - 1) + n - 1
    return f(n - 2) + 2 * n + 3
for i in range(5100):
    f(i)
print(f(5000) - f(4993))
Ответ:34990
Алгоритм вычисления значения функции F(n), где n — неотрицательное целое число, задан следующими соотношениями: F(n) = 0 при n = 0; F(n) = F(n // 2) + 2, если n > 0 и число n чётное; F(n) = 2 + F(n − 1), если n > 0 и число n нечётное. Сколько существует значений n, не превышающих 1023, для которых F(n) = 10? В ответе запишите только целое число.
from functools import lru_cache
d = []
@lru_cache(None)
def f(n):
    if n == 0:
        return 0
    if n % 2 == 0:
        return f(n // 2) + 2
    return 2 + f(n - 1)
for n in range(1024):
    if f(n) == 10:
        d.append(n)
print(len(d))
Ответ:5
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n ≤ 2; F(n) = F(n − 4) + 2n, если n > 4 и число n чётное; F(n) = F(n − 2) + 2n, если n > 2 и число n нечётное. Чему равно значение выражения F(3500) − F(3496)? В ответе запишите только целое число.
f = {}
for i in range(3510):
    if i <= 2:
        f[i] = 1
    elif i % 2 == 0 and i > 4:
        f[i] = f[i - 4] + 2 * i
    elif i % 2 == 0:
        f[i] = f[i - 2] + 2 * i
    else:
        f[i] = f[i - 2] + 2 * i
print(f[3500] - f[3496])
Ответ:7000
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n − 1) + G(n − 3); G(n) = n * n, если n < 8; G(n) = G(n − 2) + 3, если n ≥ 8. Чему равно значение выражения F(1000) − F(994)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n - 1) + g(n - 3)
@lru_cache(None)
def g(n):
    if n < 8:
        return n * n
    return g(n - 2) + 3
for i in range(2000):
    g(i)
print(f(1000) - f(994))
Ответ:18
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = n, если n < 3; F(n) = F(n − 1) + G(n − 1), если n ≥ 3; G(n) = n + 4, если n < 6; G(n) = G(n − 1) + 2, если n ≥ 6 и n — чётное; G(n) = G(n − 2) + 3, если n ≥ 6 и n — нечётное. Чему равно значение выражения F(20)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 3:
        return n
    return f(n - 1) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 6:
        return n + 4
    if n % 2 == 0:
        return g(n - 1) + 2
    return g(n - 2) + 3
for i in range(100):
    f(i)
    g(i)
print(f(20))
Ответ:319
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 1, если n < 5; F(n) = F(n − 1) + G(n // 3), если n ≥ 5; G(n) = 2 * n + 1, если n < 5; G(n) = G(n // 2) + n % 3, если n ≥ 5. Чему равно значение выражения F(50)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return g(n) + 1
    return f(n - 1) + g(n // 3)
@lru_cache(None)
def g(n):
    if n < 5:
        return 2 * n + 1
    return g(n // 2) + n % 3
for i in range(100):
    f(i)
    g(i)
print(f(50))
Ответ:388
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2 * G(n) + G(n − 1); G(n) = n + 1, если n < 4; G(n) = G(n − 3) + 2 * n, если n ≥ 4. Чему равно значение выражения F(40)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return 2 * g(n) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 4:
        return n + 1
    return g(n - 3) + 2 * n
for i in range(100):
    g(i)
print(f(40))
Ответ:1692
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 12; F(n) = F(n − 2) + G(n − 1), если n ≥ 12; G(n) = 3 * n, если n < 10; G(n) = G(n − 4) + 5, если n ≥ 10. Чему равно значение выражения F(60) − F(54)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 12:
        return g(n)
    return f(n - 2) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 10:
        return 3 * n
    return g(n - 4) + 5
for i in range(100):
    f(i)
    g(i)
print(f(60) - f(54))
Ответ:254
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + G(n // 2); G(n) = n * n + n, если n < 7; G(n) = G(n − 3) + 1, если n ≥ 7 и n делится на 3; G(n) = G(n − 2) + 2, если n ≥ 7 и n не делится на 3. Сколько существует значений n, не превышающих 200, для которых F(n) делится на 5? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 7:
        return n * n + n
    if n % 3 == 0:
        return g(n - 3) + 1
    return g(n - 2) + 2
for i in range(300):
    g(i)
c = 0
for n in range(1, 201):
    if f(n) % 5 == 0:
        c += 1
print(c)
Ответ:37
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = n + 2, если n < 9; F(n) = F(n − 3) + G(n − 1), если n ≥ 9; G(n) = 2 * n − 1, если n < 9; G(n) = G(n − 2) + G(n − 4), если n ≥ 9. Чему равно значение выражения F(25)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 9:
        return n + 2
    return f(n - 3) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 9:
        return 2 * n - 1
    return g(n - 2) + g(n - 4)
for i in range(100):
    f(i)
    g(i)
print(f(25))
Ответ:1470
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 5; F(n) = F(n − 1) + G(n), если n ≥ 5 и n — чётное; F(n) = F(n − 2) + 2 * G(n), если n ≥ 5 и n — нечётное; G(n) = n + 2, если n < 5; G(n) = G(n // 2) + 1, если n ≥ 5. Чему равно значение выражения F(40)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return g(n)
    if n % 2 == 0:
        return f(n - 1) + g(n)
    return f(n - 2) + 2 * g(n)
@lru_cache(None)
def g(n):
    if n < 5:
        return n + 2
    return g(n // 2) + 1
for i in range(100):
    f(i)
    g(i)
print(f(40))
Ответ:285
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n − 1) − G(n − 3); G(n) = 2 * n + 3, если n < 8; G(n) = G(n − 2) + n, если n ≥ 8. Чему равно значение выражения F(100)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n - 1) - g(n - 3)
@lru_cache(None)
def g(n):
    if n < 8:
        return 2 * n + 3
    return g(n - 2) + n
for i in range(200):
    g(i)
print(f(100))
Ответ:99
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 6; F(n) = F(n − 1) + G(n), если n ≥ 6; G(n) = n * n, если n < 6; G(n) = G(n // 2) + 2, если n ≥ 6. Сколько существует значений n, не превышающих 100, для которых F(n) < 200? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 6:
        return g(n)
    return f(n - 1) + g(n)
@lru_cache(None)
def g(n):
    if n < 6:
        return n * n
    return g(n // 2) + 2
for i in range(200):
    f(i)
    g(i)
c = 0
for n in range(1, 101):
    if f(n) < 200:
        c += 1
print(c)
Ответ:15
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 3 * G(n) − G(n − 1); G(n) = n + 5, если n < 4; G(n) = G(n − 1) + 1, если n ≥ 4 и n — чётное; G(n) = G(n − 2) + 2, если n ≥ 4 и n — нечётное. Чему равно значение выражения F(200)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return 3 * g(n) - g(n - 1)
@lru_cache(None)
def g(n):
    if n < 4:
        return n + 5
    if n % 2 == 0:
        return g(n - 1) + 1
    return g(n - 2) + 2
for i in range(300):
    g(i)
print(f(200))
Ответ:411
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2, если n < 3; F(n) = F(n − 1) + G(n − 2), если n ≥ 3; G(n) = 1, если n < 3; G(n) = G(n − 1) + n, если n ≥ 3. Чему равно значение выражения F(15)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 3:
        return 2
    return f(n - 1) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 3:
        return 1
    return g(n - 1) + n
for i in range(100):
    f(i)
    g(i)
print(f(15))
Ответ:433
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 2 * G(n − 10); G(n) = n, если n < 10; G(n) = G(n − 5) + 2, если n ≥ 10. Сколько существует значений n от 20 до 200 включительно, для которых F(n) при делении на 7 даёт остаток 3? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) + 2 * g(n - 10)
@lru_cache(None)
def g(n):
    if n < 10:
        return n
    return g(n - 5) + 2
for i in range(300):
    g(i)
c = 0
for n in range(20, 201):
    if f(n) % 7 == 3:
        c += 1
print(c)
Ответ:27
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 1, если n < 8; F(n) = F(n − 2) + G(n − 1), если n ≥ 8; G(n) = n + 1, если n < 8; G(n) = G(n // 3) + 4, если n ≥ 8. Чему равно значение выражения F(50)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 8:
        return g(n) + 1
    return f(n - 2) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 8:
        return n + 1
    return g(n // 3) + 4
for i in range(100):
    f(i)
    g(i)
print(f(50))
Ответ:261
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) − G(n − 1); G(n) = 2 * n, если n < 5; G(n) = G(n − 1) + G(n − 3), если n ≥ 5. Чему равно значение выражения F(15)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) - g(n - 1)
@lru_cache(None)
def g(n):
    if n < 5:
        return 2 * n
    return g(n - 1) + g(n - 3)
for i in range(100):
    g(i)
print(f(15))
Ответ:176
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 6; F(n) = F(n − 1) + G(n − 2), если n ≥ 6 и n — чётное; F(n) = F(n − 2) + G(n − 1), если n ≥ 6 и n — нечётное; G(n) = n + 3, если n < 6; G(n) = G(n − 2) + 3, если n ≥ 6. Чему равно значение выражения F(40)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 6:
        return g(n)
    if n % 2 == 0:
        return f(n - 1) + g(n - 2)
    return f(n - 2) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 6:
        return n + 3
    return g(n - 2) + 3
for i in range(100):
    f(i)
    g(i)
print(f(40))
Ответ:644
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + G(n − 1); G(n) = n * n − 1, если n < 7; G(n) = G(n // 2) + G(n // 3), если n ≥ 7. Сколько существует значений n от 7 до 150 включительно, для которых F(n) — чётное число? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 7:
        return n * n - 1
    return g(n // 2) + g(n // 3)
for i in range(200):
    g(i)
c = 0
for n in range(7, 151):
    if f(n) % 2 == 0:
        c += 1
print(c)
Ответ:121
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 9; F(n) = F(n − 1) + G(n − 2), если n ≥ 9; G(n) = 3 * n + 1, если n < 9; G(n) = G(n − 2) + 2, если n ≥ 9 и n — чётное; G(n) = G(n − 3) + 1, если n ≥ 9 и n — нечётное. Чему равно значение выражения F(30) − F(25)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 9:
        return g(n)
    return f(n - 1) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 9:
        return 3 * n + 1
    if n % 2 == 0:
        return g(n - 2) + 2
    return g(n - 3) + 1
for i in range(100):
    f(i)
    g(i)
print(f(30) - f(25))
Ответ:211
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 5; G(n) = n + 2, если n < 4; G(n) = 2 * G(n − 1) − G(n − 2), если n ≥ 4. Чему равно значение выражения F(20)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) + 5
@lru_cache(None)
def g(n):
    if n < 4:
        return n + 2
    return 2 * g(n - 1) - g(n - 2)
for i in range(100):
    g(i)
print(f(20))
Ответ:27
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 10; F(n) = F(n − 3) + G(n − 1), если n ≥ 10; G(n) = n * n, если n < 10; G(n) = G(n − 3) + 6, если n ≥ 10. Чему равно значение выражения F(40)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 10:
        return g(n)
    return f(n - 3) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 10:
        return n * n
    return g(n - 3) + 6
for i in range(100):
    f(i)
    g(i)
print(f(40))
Ответ:1270
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + G(n // 2) + G(n // 3); G(n) = 2 * n + 1, если n < 5; G(n) = G(n // 2) + n % 2, если n ≥ 5. Сколько существует значений n, не превышающих 200, для которых F(n) = 16? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) + g(n // 2) + g(n // 3)
@lru_cache(None)
def g(n):
    if n < 5:
        return 2 * n + 1
    return g(n // 2) + n % 2
for i in range(300):
    g(i)
c = 0
for n in range(1, 201):
    if f(n) == 16:
        c += 1
print(c)
Ответ:0
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 1, если n < 6; F(n) = F(n − 1) + G(n − 2), если n ≥ 6; G(n) = n + 1, если n < 6; G(n) = G(n − 2) + G(n − 4), если n ≥ 6. Чему равно значение выражения F(18)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 6:
        return 1
    return f(n - 1) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 6:
        return n + 1
    return g(n - 2) + g(n - 4)
for i in range(100):
    f(i)
    g(i)
print(f(18))
Ответ:394
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2 * G(n − 2) + 3; G(n) = 4 * n, если n < 8; G(n) = G(n − 1) − 1, если n ≥ 8. Чему равно значение выражения F(100)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return 2 * g(n - 2) + 3
@lru_cache(None)
def g(n):
    if n < 8:
        return 4 * n
    return g(n - 1) - 1
for i in range(200):
    g(i)
print(f(100))
Ответ:-123
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 3; F(n) = F(n − 1) + G(n − 1), если n ≥ 3; G(n) = n + 2, если n < 3; G(n) = G(n − 1) + 2 * G(n − 2), если n ≥ 3. Чему равно значение выражения F(12)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 3:
        return g(n)
    return f(n - 1) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 3:
        return n + 2
    return g(n - 1) + 2 * g(n - 2)
for i in range(100):
    f(i)
    g(i)
print(f(12))
Ответ:4778
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) − G(n // 2); G(n) = n * n, если n < 7; G(n) = G(n // 2) + 3, если n ≥ 7. Сколько существует значений n от 7 до 300 включительно, для которых F(n) = 3? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) - g(n // 2)
@lru_cache(None)
def g(n):
    if n < 7:
        return n * n
    return g(n // 2) + 3
for i in range(400):
    g(i)
c = 0
for n in range(7, 301):
    if f(n) == 3:
        c += 1
print(c)
Ответ:294
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 0, если n < 5; F(n) = F(n − 1) + G(n), если n ≥ 5; G(n) = n + 10, если n < 5; G(n) = G(n − 1) + 1, если n ≥ 5 и n — чётное; G(n) = G(n − 2) + 2, если n ≥ 5 и n — нечётное. Чему равно значение выражения F(25)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return 0
    return f(n - 1) + g(n)
@lru_cache(None)
def g(n):
    if n < 5:
        return n + 10
    if n % 2 == 0:
        return g(n - 1) + 1
    return g(n - 2) + 2
for i in range(100):
    f(i)
    g(i)
print(f(25))
Ответ:525
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + G(n − 6); G(n) = n + 4, если n < 9; G(n) = G(n − 3) + 3, если n ≥ 9. Чему равно значение выражения F(99) − F(93)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) + g(n - 6)
@lru_cache(None)
def g(n):
    if n < 9:
        return n + 4
    return g(n - 3) + 3
for i in range(200):
    g(i)
print(f(99) - f(93))
Ответ:12
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 1, если n < 4; F(n) = F(n − 2) + G(n − 1), если n ≥ 4; G(n) = 2, если n < 4; G(n) = G(n − 1) + n % 3, если n ≥ 4. Чему равно значение выражения F(30)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 4:
        return 1
    return f(n - 2) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 4:
        return 2
    return g(n - 1) + n % 3
for i in range(100):
    f(i)
    g(i)
print(f(30))
Ответ:216
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 1; G(n) = 3 * n − 1, если n < 6; G(n) = G(n // 2) + 2 * G(n // 3), если n ≥ 6. Сколько существует значений n от 6 до 150 включительно, для которых F(n) > 30? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) + 1
@lru_cache(None)
def g(n):
    if n < 6:
        return 3 * n - 1
    return g(n // 2) + 2 * g(n // 3)
for i in range(200):
    g(i)
c = 0
for n in range(6, 151):
    if f(n) > 30:
        c += 1
print(c)
Ответ:141
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 8; F(n) = F(n − 2) + G(n), если n ≥ 8; G(n) = n + 2, если n < 8; G(n) = G(n − 2) + 4, если n ≥ 8. Чему равно значение выражения F(50)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 8:
        return g(n)
    return f(n - 2) + g(n)
@lru_cache(None)
def g(n):
    if n < 8:
        return n + 2
    return g(n - 2) + 4
for i in range(100):
    f(i)
    g(i)
print(f(50))
Ответ:1196
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2 * (G(n − 3) + 8); G(n) = 2 * n, если n < 10; G(n) = G(n − 2) + 1, если n ≥ 10. Чему равно значение выражения F(15548)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return 2 * (g(n - 3) + 8)
@lru_cache(None)
def g(n):
    if n < 10:
        return 2 * n
    return g(n - 2) + 1
for i in range(20000):
    g(i)
print(f(15548))
Ответ:15588
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n − 2) + G(n // 2); G(n) = n + 7, если n < 6; G(n) = G(n − 2) + 2, если n ≥ 6 и n — чётное; G(n) = G(n // 2) + 3, если n ≥ 6 и n — нечётное. Чему равно значение выражения F(120)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n - 2) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 6:
        return n + 7
    if n % 2 == 0:
        return g(n - 2) + 2
    return g(n // 2) + 3
for i in range(300):
    g(i)
print(f(120))
Ответ:192
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + G(n − 1), если n < 7; F(n) = F(n − 2) + G(n − 3), если n ≥ 7; G(n) = n * n + 1, если n < 7; G(n) = G(n − 1) − 2, если n ≥ 7. Чему равно значение выражения F(35)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 7:
        return g(n) + g(n - 1)
    return f(n - 2) + g(n - 3)
@lru_cache(None)
def g(n):
    if n < 7:
        return n * n + 1
    return g(n - 1) - 2
for i in range(100):
    f(i)
    g(i)
print(f(35))
Ответ:214
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) − 2 * G(n − 4); G(n) = 3 * n + 2, если n < 9; G(n) = G(n − 3) + n % 5, если n ≥ 9. Сколько существует значений n от 9 до 180 включительно, для которых F(n) меньше 0? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n) - 2 * g(n - 4)
@lru_cache(None)
def g(n):
    if n < 9:
        return 3 * n + 2
    return g(n - 3) + n % 5
for i in range(300):
    g(i)
c = 0
for n in range(9, 181):
    if f(n) < 0:
        c += 1
print(c)
Ответ:172
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n // 2) + G(n // 3) + 1; G(n) = n + 1, если n < 4; G(n) = G(n // 2) + G(n // 3), если n ≥ 4. Чему равно значение выражения F(729)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n // 2) + g(n // 3) + 1
@lru_cache(None)
def g(n):
    if n < 4:
        return n + 1
    return g(n // 2) + g(n // 3)
for i in range(1000):
    g(i)
print(f(729))
Ответ:266
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 5; F(n) = F(n − 1) + G(n − 2) + 1, если n ≥ 5; G(n) = 2 * n, если n < 5; G(n) = G(n − 2) + G(n − 3), если n ≥ 5. Чему равно значение выражения F(18)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return g(n)
    return f(n - 1) + g(n - 2) + 1
@lru_cache(None)
def g(n):
    if n < 5:
        return 2 * n
    return g(n - 2) + g(n - 3)
for i in range(100):
    f(i)
    g(i)
print(f(18))
Ответ:934
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2 * G(n) + 3; G(n) = n * n, если n < 6; G(n) = G(n // 2) + 2, если n ≥ 6. Сколько существует значений n от 6 до 500 включительно, для которых F(n) делится на 3? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return 2 * g(n) + 3
@lru_cache(None)
def g(n):
    if n < 6:
        return n * n
    return g(n // 2) + 2
for i in range(1000):
    g(i)
c = 0
for n in range(6, 501):
    if f(n) % 3 == 0:
        c += 1
print(c)
Ответ:108
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n − 1) + 2 * G(n − 5); G(n) = n + 3, если n < 7; G(n) = G(n − 2) + 5, если n ≥ 7. Чему равно значение выражения F(101) − F(91)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    return g(n - 1) + 2 * g(n - 5)
@lru_cache(None)
def g(n):
    if n < 7:
        return n + 3
    return g(n - 2) + 5
for i in range(200):
    g(i)
print(f(101) - f(91))
Ответ:75
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = n + 1, если n < 5; F(n) = F(n − 2) + G(n − 1), если n ≥ 5 и n — чётное; F(n) = F(n − 1) + G(n − 2), если n ≥ 5 и n — нечётное; G(n) = n + 3, если n < 4; G(n) = G(n − 1) + 2, если n ≥ 4 и n делится на 3; G(n) = G(n − 2) + 3, если n ≥ 4 и остаток от деления n на 3 равен 1; G(n) = G(n − 3) + 4, если n ≥ 4 и остаток от деления n на 3 равен 2. Чему равно значение выражения F(35)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return n + 1
    if n % 2 == 0:
        return f(n - 2) + g(n - 1)
    return f(n - 1) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 4:
        return n + 3
    if n % 3 == 0:
        return g(n - 1) + 2
    if n % 3 == 1:
        return g(n - 2) + 3
    return g(n - 3) + 4
for i in range(100):
    f(i)
    g(i)
print(f(35))
Ответ:472
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 2, если n < 6; F(n) = F(n − 1) + G(n // 2), если n ≥ 6 и n — чётное; F(n) = F(n − 2) + G(n − 1), если n ≥ 6 и n — нечётное; G(n) = 2 * n + 1, если n < 6; G(n) = G(n // 2) + 2, если n ≥ 6 и n — чётное; G(n) = G(n // 3) + 3, если n ≥ 6, n — нечётное и делится на 3; G(n) = G(n − 1) + 1, если n ≥ 6, n — нечётное и не делится на 3. Чему равно значение выражения F(60) − F(54)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 6:
        return g(n) + 2
    if n % 2 == 0:
        return f(n - 1) + g(n // 2)
    return f(n - 2) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 6:
        return 2 * n + 1
    if n % 2 == 0:
        return g(n // 2) + 2
    if n % 3 == 0:
        return g(n // 3) + 3
    return g(n - 1) + 1
for i in range(100):
    f(i)
    g(i)
print(f(60) - f(54))
Ответ:51
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 7; F(n) = F(n − 3) + G(n − 2), если n ≥ 7 и n делится на 3; F(n) = F(n − 1) + G(n // 2), если n ≥ 7 и остаток от деления n на 3 равен 1; F(n) = F(n − 2) + G(n − 1), если n ≥ 7 и остаток от деления n на 3 равен 2; G(n) = n * n + 1, если n < 5; G(n) = G(n − 2) + n % 5, если n ≥ 5 и n — чётное; G(n) = G(n // 5) + 5, если n ≥ 5, n — нечётное и делится на 5; G(n) = G(n − 1) + 2, если n ≥ 5, n — нечётное и не делится на 5. Сколько существует значений n, не превышающих 120, для которых F(n) при делении на 7 даёт остаток 3? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 7:
        return g(n)
    if n % 3 == 0:
        return f(n - 3) + g(n - 2)
    if n % 3 == 1:
        return f(n - 1) + g(n // 2)
    return f(n - 2) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 5:
        return n * n + 1
    if n % 2 == 0:
        return g(n - 2) + n % 5
    if n % 5 == 0:
        return g(n // 5) + 5
    return g(n - 1) + 2
for i in range(200):
    f(i)
    g(i)
c = 0
for n in range(1, 121):
    if f(n) % 7 == 3:
        c += 1
print(c)
Ответ:32
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2 * G(n), если n < 8; F(n) = F(n − 2) + G(n − 3), если n ≥ 8 и n — чётное; F(n) = F(n − 1) + G(n − 2), если n ≥ 8 и n — нечётное; G(n) = 3 * n − 1, если n < 8; G(n) = G(n − 4) + 6, если n ≥ 8 и n делится на 4; G(n) = G(n − 2) + 3, если n ≥ 8, n — чётное и не делится на 4; G(n) = G(n − 1) + 2, если n ≥ 8 и n — нечётное. Чему равно значение выражения F(50)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 8:
        return 2 * g(n)
    if n % 2 == 0:
        return f(n - 2) + g(n - 3)
    return f(n - 1) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 8:
        return 3 * n - 1
    if n % 4 == 0:
        return g(n - 4) + 6
    if n % 2 == 0:
        return g(n - 2) + 3
    return g(n - 1) + 2
for i in range(100):
    f(i)
    g(i)
print(f(50))
Ответ:1018
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 1, если n < 4; F(n) = F(n − 1) + G(n), если n ≥ 4 и n — чётное; F(n) = F(n − 3) + G(n − 1), если n ≥ 4, n — нечётное и делится на 3; F(n) = F(n − 2) + G(n // 2), если n ≥ 4, n — нечётное и не делится на 3; G(n) = n + 2, если n < 4; G(n) = G(n // 2) + 1, если n ≥ 4 и n — чётное; G(n) = G(n // 3) + 2, если n ≥ 4, n — нечётное и делится на 3; G(n) = G(n − 1) + 1, если n ≥ 4, n — нечётное и не делится на 3. Сколько существует значений n от 10 до 200 включительно, для которых F(n) > 100? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 4:
        return g(n) + 1
    if n % 2 == 0:
        return f(n - 1) + g(n)
    if n % 3 == 0:
        return f(n - 3) + g(n - 1)
    return f(n - 2) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 4:
        return n + 2
    if n % 2 == 0:
        return g(n // 2) + 1
    if n % 3 == 0:
        return g(n // 3) + 2
    return g(n - 1) + 1
for i in range(300):
    f(i)
    g(i)
c = 0
for n in range(10, 201):
    if f(n) > 100:
        c += 1
print(c)
Ответ:171
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 1, если n < 7; F(n) = F(n − 2) + G(n − 1), если n ≥ 7 и n — чётное; F(n) = F(n − 5) + G(n // 2), если n ≥ 7, n — нечётное и делится на 5; F(n) = F(n − 1) + G(n − 3), если n ≥ 7, n — нечётное и не делится на 5; G(n) = n * n, если n < 7; G(n) = G(n − 2) + 2, если n ≥ 7 и n — чётное; G(n) = G(n − 3) + 3, если n ≥ 7, n — нечётное и делится на 3; G(n) = G(n − 1) + 4, если n ≥ 7, n — нечётное и не делится на 3. Чему равно значение выражения F(40) − F(34)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 7:
        return g(n) + 1
    if n % 2 == 0:
        return f(n - 2) + g(n - 1)
    if n % 5 == 0:
        return f(n - 5) + g(n // 2)
    return f(n - 1) + g(n - 3)
@lru_cache(None)
def g(n):
    if n < 7:
        return n * n
    if n % 2 == 0:
        return g(n - 2) + 2
    if n % 3 == 0:
        return g(n - 3) + 3
    return g(n - 1) + 4
for i in range(100):
    f(i)
    g(i)
print(f(40) - f(34))
Ответ:207
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 1, если n < 5; F(n) = F(n − 1) + G(n), если n ≥ 5 и n — чётное; F(n) = F(n − 3) + G(n − 1), если n ≥ 5, n — нечётное и делится на 3; F(n) = F(n − 2) + G(n // 2), если n ≥ 5, n — нечётное и не делится на 3; G(n) = 2 * n + 3, если n < 5; G(n) = G(n // 2) + 2, если n ≥ 5 и n — чётное; G(n) = G(n // 3) + 1, если n ≥ 5, n — нечётное и делится на 3; G(n) = G(n − 1) + 2, если n ≥ 5, n — нечётное и не делится на 3. Чему равно значение выражения F(45)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return 1
    if n % 2 == 0:
        return f(n - 1) + g(n)
    if n % 3 == 0:
        return f(n - 3) + g(n - 1)
    return f(n - 2) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 5:
        return 2 * n + 3
    if n % 2 == 0:
        return g(n // 2) + 2
    if n % 3 == 0:
        return g(n // 3) + 1
    return g(n - 1) + 2
for i in range(100):
    f(i)
    g(i)
print(f(45))
Ответ:313
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 6; F(n) = F(n − 4) + G(n − 1), если n ≥ 6 и n делится на 4; F(n) = F(n − 2) + G(n // 2), если n ≥ 6, n — чётное и не делится на 4; F(n) = F(n − 1) + G(n − 3), если n ≥ 6 и n — нечётное; G(n) = n + 5, если n < 6; G(n) = G(n // 2) + 4, если n ≥ 6 и n делится на 4; G(n) = G(n − 2) + 2, если n ≥ 6, n — чётное и не делится на 4; G(n) = G(n − 1) + 1, если n ≥ 6 и n — нечётное. Сколько существует значений n, не превышающих 150, для которых F(n) делится на 5? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 6:
        return g(n)
    if n % 4 == 0:
        return f(n - 4) + g(n - 1)
    if n % 2 == 0:
        return f(n - 2) + g(n // 2)
    return f(n - 1) + g(n - 3)
@lru_cache(None)
def g(n):
    if n < 6:
        return n + 5
    if n % 4 == 0:
        return g(n // 2) + 4
    if n % 2 == 0:
        return g(n - 2) + 2
    return g(n - 1) + 1
for i in range(200):
    f(i)
    g(i)
c = 0
for n in range(1, 151):
    if f(n) % 5 == 0:
        c += 1
print(c)
Ответ:27
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 2, если n < 9; F(n) = F(n − 2) + G(n − 1), если n ≥ 9 и n — чётное; F(n) = F(n − 3) + G(n − 2), если n ≥ 9, n — нечётное и делится на 3; F(n) = F(n − 1) + G(n // 2), если n ≥ 9, n — нечётное и не делится на 3; G(n) = 2 * n, если n < 9; G(n) = G(n − 2) + 5, если n ≥ 9 и n — чётное; G(n) = G(n − 3) + 4, если n ≥ 9, n — нечётное и делится на 3; G(n) = G(n − 1) + 3, если n ≥ 9, n — нечётное и не делится на 3. Чему равно значение выражения F(70)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 9:
        return g(n) + 2
    if n % 2 == 0:
        return f(n - 2) + g(n - 1)
    if n % 3 == 0:
        return f(n - 3) + g(n - 2)
    return f(n - 1) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 9:
        return 2 * n
    if n % 2 == 0:
        return g(n - 2) + 5
    if n % 3 == 0:
        return g(n - 3) + 4
    return g(n - 1) + 3
for i in range(100):
    f(i)
    g(i)
print(f(70))
Ответ:2889
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 5; F(n) = F(n − 1) + G(n // 2), если n ≥ 5 и n — чётное; F(n) = F(n − 5) + G(n − 1), если n ≥ 5, n — нечётное и делится на 5; F(n) = F(n − 2) + G(n − 2), если n ≥ 5, n — нечётное и не делится на 5; G(n) = n * n + n, если n < 5; G(n) = G(n // 2) + 2, если n ≥ 5 и n — чётное; G(n) = G(n // 5) + 5, если n ≥ 5, n — нечётное и делится на 5; G(n) = G(n − 1) + 1, если n ≥ 5, n — нечётное и не делится на 5. Сколько существует значений n от 20 до 220 включительно, для которых F(n) является чётным числом? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return g(n)
    if n % 2 == 0:
        return f(n - 1) + g(n // 2)
    if n % 5 == 0:
        return f(n - 5) + g(n - 1)
    return f(n - 2) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 5:
        return n * n + n
    if n % 2 == 0:
        return g(n // 2) + 2
    if n % 5 == 0:
        return g(n // 5) + 5
    return g(n - 1) + 1
for i in range(300):
    f(i)
    g(i)
c = 0
for n in range(20, 221):
    if f(n) % 2 == 0:
        c += 1
print(c)
Ответ:117
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 1, если n < 7; F(n) = F(n − 2) + G(n), если n ≥ 7 и n — чётное; F(n) = F(n − 3) + G(n − 1), если n ≥ 7, n — нечётное и делится на 3; F(n) = F(n − 1) + G(n // 2), если n ≥ 7, n — нечётное и не делится на 3; G(n) = 3 * n + 1, если n < 7; G(n) = G(n − 2) + 2, если n ≥ 7 и n — чётное; G(n) = G(n // 3) + 3, если n ≥ 7, n — нечётное и делится на 3; G(n) = G(n − 1) + 1, если n ≥ 7, n — нечётное и не делится на 3. Чему равно значение выражения F(55) − F(49)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 7:
        return g(n) + 1
    if n % 2 == 0:
        return f(n - 2) + g(n)
    if n % 3 == 0:
        return f(n - 3) + g(n - 1)
    return f(n - 1) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 7:
        return 3 * n + 1
    if n % 2 == 0:
        return g(n - 2) + 2
    if n % 3 == 0:
        return g(n // 3) + 3
    return g(n - 1) + 1
for i in range(100):
    f(i)
    g(i)
print(f(55) - f(49))
Ответ:174
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 4; F(n) = F(n − 2) + G(n − 1), если n ≥ 4 и n — чётное; F(n) = F(n − 3) + G(n − 2), если n ≥ 4, n — нечётное и делится на 3; F(n) = F(n − 1) + G(n − 1), если n ≥ 4, n — нечётное и не делится на 3; G(n) = n + 1, если n < 4; G(n) = G(n − 2) + 2, если n ≥ 4 и n — чётное; G(n) = G(n − 3) + 3, если n ≥ 4, n — нечётное и делится на 3; G(n) = G(n − 1) + 4, если n ≥ 4, n — нечётное и не делится на 3. Сколько существует значений n, не превышающих 100, для которых F(n) < 200? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 4:
        return g(n)
    if n % 2 == 0:
        return f(n - 2) + g(n - 1)
    if n % 3 == 0:
        return f(n - 3) + g(n - 2)
    return f(n - 1) + g(n - 1)
@lru_cache(None)
def g(n):
    if n < 4:
        return n + 1
    if n % 2 == 0:
        return g(n - 2) + 2
    if n % 3 == 0:
        return g(n - 3) + 3
    return g(n - 1) + 4
for i in range(200):
    f(i)
    g(i)
c = 0
for n in range(1, 101):
    if f(n) < 200:
        c += 1
print(c)
Ответ:24
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 2, если n < 8; F(n) = F(n − 2) + G(n), если n ≥ 8 и n — чётное; F(n) = F(n − 3) + G(n // 2), если n ≥ 8, n — нечётное и делится на 3; F(n) = F(n − 1) + G(n − 2), если n ≥ 8, n — нечётное и не делится на 3; G(n) = 2 * n + 1, если n < 8; G(n) = G(n // 2) + 3, если n ≥ 8 и n — чётное; G(n) = G(n − 3) + 2, если n ≥ 8, n — нечётное и делится на 3; G(n) = G(n − 1) + 1, если n ≥ 8, n — нечётное и не делится на 3. Чему равно значение выражения F(64)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 8:
        return 2
    if n % 2 == 0:
        return f(n - 2) + g(n)
    if n % 3 == 0:
        return f(n - 3) + g(n // 2)
    return f(n - 1) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 8:
        return 2 * n + 1
    if n % 2 == 0:
        return g(n // 2) + 3
    if n % 3 == 0:
        return g(n - 3) + 2
    return g(n - 1) + 1
for i in range(100):
    f(i)
    g(i)
print(f(64))
Ответ:588
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 3, если n < 6; F(n) = F(n − 2) + G(n − 1), если n ≥ 6 и n — чётное; F(n) = F(n − 3) + G(n // 2), если n ≥ 6, n — нечётное и делится на 3; F(n) = F(n − 1) + G(n − 2), если n ≥ 6, n — нечётное и не делится на 3; G(n) = n * n − 1, если n < 6; G(n) = G(n − 2) + 1, если n ≥ 6 и n — чётное; G(n) = G(n // 3) + 4, если n ≥ 6, n — нечётное и делится на 3; G(n) = G(n − 1) + 2, если n ≥ 6, n — нечётное и не делится на 3. Сколько существует значений n от 30 до 180 включительно, для которых F(n) при делении на 9 даёт остаток 4? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 6:
        return g(n) + 3
    if n % 2 == 0:
        return f(n - 2) + g(n - 1)
    if n % 3 == 0:
        return f(n - 3) + g(n // 2)
    return f(n - 1) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 6:
        return n * n - 1
    if n % 2 == 0:
        return g(n - 2) + 1
    if n % 3 == 0:
        return g(n // 3) + 4
    return g(n - 1) + 2
for i in range(300):
    f(i)
    g(i)
c = 0
for n in range(30, 181):
    if f(n) % 9 == 4:
        c += 1
print(c)
Ответ:22
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 5; F(n) = F(n − 1) + G(n), если n ≥ 5 и n — чётное; F(n) = F(n − 3) + G(n − 1), если n ≥ 5, n — нечётное и делится на 3; F(n) = F(n − 2) + G(n // 2), если n ≥ 5, n — нечётное и не делится на 3; G(n) = 4 * n, если n < 5; G(n) = G(n // 2) + 1, если n ≥ 5 и n — чётное; G(n) = G(n // 3) + 2, если n ≥ 5, n — нечётное и делится на 3; G(n) = G(n − 1) + 3, если n ≥ 5, n — нечётное и не делится на 3. Чему равно значение выражения F(50)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return g(n)
    if n % 2 == 0:
        return f(n - 1) + g(n)
    if n % 3 == 0:
        return f(n - 3) + g(n - 1)
    return f(n - 2) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 5:
        return 4 * n
    if n % 2 == 0:
        return g(n // 2) + 1
    if n % 3 == 0:
        return g(n // 3) + 2
    return g(n - 1) + 3
for i in range(100):
    f(i)
    g(i)
print(f(50))
Ответ:449
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 2, если n < 7; F(n) = F(n − 2) + G(n − 1), если n ≥ 7 и n — чётное; F(n) = F(n − 5) + G(n // 2), если n ≥ 7, n — нечётное и делится на 5; F(n) = F(n − 1) + G(n − 3), если n ≥ 7, n — нечётное и не делится на 5; G(n) = n + 6, если n < 7; G(n) = G(n − 2) + 2, если n ≥ 7 и n — чётное; G(n) = G(n // 5) + 5, если n ≥ 7, n — нечётное и делится на 5; G(n) = G(n − 1) + 1, если n ≥ 7, n — нечётное и не делится на 5. Чему равно значение выражения F(80) − F(74)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 7:
        return g(n) + 2
    if n % 2 == 0:
        return f(n - 2) + g(n - 1)
    if n % 5 == 0:
        return f(n - 5) + g(n // 2)
    return f(n - 1) + g(n - 3)
@lru_cache(None)
def g(n):
    if n < 7:
        return n + 6
    if n % 2 == 0:
        return g(n - 2) + 2
    if n % 5 == 0:
        return g(n // 5) + 5
    return g(n - 1) + 1
for i in range(200):
    f(i)
    g(i)
print(f(80) - f(74))
Ответ:187
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = 1, если n < 9; F(n) = F(n − 2) + G(n), если n ≥ 9 и n — чётное; F(n) = F(n − 3) + G(n − 1), если n ≥ 9, n — нечётное и делится на 3; F(n) = F(n − 1) + G(n // 2), если n ≥ 9, n — нечётное и не делится на 3; G(n) = 2 * n + 5, если n < 9; G(n) = G(n // 2) + 2, если n ≥ 9 и n — чётное; G(n) = G(n // 3) + 3, если n ≥ 9, n — нечётное и делится на 3; G(n) = G(n − 1) + 4, если n ≥ 9, n — нечётное и не делится на 3. Сколько существует значений n, не превышающих 180, для которых F(n) > 300? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 9:
        return 1
    if n % 2 == 0:
        return f(n - 2) + g(n)
    if n % 3 == 0:
        return f(n - 3) + g(n - 1)
    return f(n - 1) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 9:
        return 2 * n + 5
    if n % 2 == 0:
        return g(n // 2) + 2
    if n % 3 == 0:
        return g(n // 3) + 3
    return g(n - 1) + 4
for i in range(300):
    f(i)
    g(i)
c = 0
for n in range(1, 181):
    if f(n) > 300:
        c += 1
print(c)
Ответ:145
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 1, если n < 6; F(n) = F(n − 2) + G(n − 1), если n ≥ 6 и n — чётное; F(n) = F(n − 1) + G(n // 2), если n ≥ 6 и остаток от деления n на 4 равен 1; F(n) = F(n − 3) + G(n − 2), если n ≥ 6 и остаток от деления n на 4 не равен 1 и n — нечётное; G(n) = 3 * n, если n < 6; G(n) = G(n − 2) + 2, если n ≥ 6 и n — чётное; G(n) = G(n − 1) + 3, если n ≥ 6 и остаток от деления n на 4 равен 1; G(n) = G(n // 2) + 1, если n ≥ 6 и остаток от деления n на 4 не равен 1 и n — нечётное. Чему равно значение выражения F(60)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 6:
        return g(n) + 1
    if n % 2 == 0:
        return f(n - 2) + g(n - 1)
    if n % 4 == 1:
        return f(n - 1) + g(n // 2)
    return f(n - 3) + g(n - 2)
@lru_cache(None)
def g(n):
    if n < 6:
        return 3 * n
    if n % 2 == 0:
        return g(n - 2) + 2
    if n % 4 == 1:
        return g(n - 1) + 3
    return g(n // 2) + 1
for i in range(100):
    f(i)
    g(i)
print(f(60))
Ответ:897
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n), если n < 8; F(n) = F(n − 2) + G(n), если n ≥ 8 и n — чётное; F(n) = F(n − 3) + G(n − 1), если n ≥ 8, n — нечётное и делится на 3; F(n) = F(n − 1) + G(n // 2), если n ≥ 8, n — нечётное и не делится на 3; G(n) = n * n + 2, если n < 8; G(n) = G(n // 2) + 2, если n ≥ 8 и n — чётное; G(n) = G(n − 3) + 3, если n ≥ 8, n — нечётное и делится на 3; G(n) = G(n − 1) + 1, если n ≥ 8, n — нечётное и не делится на 3. Сколько существует значений n от 40 до 240 включительно, для которых F(n) при делении на 6 даёт остаток 1? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 8:
        return g(n)
    if n % 2 == 0:
        return f(n - 2) + g(n)
    if n % 3 == 0:
        return f(n - 3) + g(n - 1)
    return f(n - 1) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 8:
        return n * n + 2
    if n % 2 == 0:
        return g(n // 2) + 2
    if n % 3 == 0:
        return g(n - 3) + 3
    return g(n - 1) + 1
for i in range(300):
    f(i)
    g(i)
c = 0
for n in range(40, 241):
    if f(n) % 6 == 1:
        c += 1
print(c)
Ответ:30
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = G(n) + 1, если n < 5; F(n) = F(n − 2) + G(n − 1), если n ≥ 5 и n — чётное; F(n) = F(n − 3) + G(n), если n ≥ 5, n — нечётное и делится на 3; F(n) = F(n − 1) + G(n // 2), если n ≥ 5, n — нечётное и не делится на 3; G(n) = 2 * n + 7, если n < 5; G(n) = G(n − 2) + 2, если n ≥ 5 и n — чётное; G(n) = G(n // 3) + 3, если n ≥ 5, n — нечётное и делится на 3; G(n) = G(n − 1) + 1, если n ≥ 5, n — нечётное и не делится на 3. Чему равно значение выражения F(90) − F(84)? В ответе запишите только целое число.
from functools import lru_cache
@lru_cache(None)
def f(n):
    if n < 5:
        return g(n) + 1
    if n % 2 == 0:
        return f(n - 2) + g(n - 1)
    if n % 3 == 0:
        return f(n - 3) + g(n)
    return f(n - 1) + g(n // 2)
@lru_cache(None)
def g(n):
    if n < 5:
        return 2 * n + 7
    if n % 2 == 0:
        return g(n - 2) + 2
    if n % 3 == 0:
        return g(n // 3) + 3
    return g(n - 1) + 1
for i in range(200):
    f(i)
    g(i)
print(f(90) - f(84))
Ответ:239
Алгоритмы вычисления значения функции F(n), где n — целое число, заданы следующими соотношениями: F(n) = 3 при n < 10; F(n) = (n + 4) × F(n − 5), если n ≥ 10. Чему равно значение выражения (F(257487) / 683 + F(257477) / 67) / F(257472)? В ответе запишите только целое число.
# F(n)=(n+4)*F(n-5), F(257487)=257491*F(257482), F(257482)=257486*F(257477)
# F(257477)=257481*F(257472)
# (F(257487)/683 + F(257477)/67) / F(257472)
# = 257491*257486*257481/683 + 257481/67
# 257491/683=377, 257481/67=3843
print(377 * 257486 * 257481 + 3843)
Ответ:24994252796625
Алгоритм вычисления значения функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = n × F(n – 1), если n ≥ 14; F(n) = 8 × G(n – 3), если n < 14; G(n) = 4, если n < 31; G(n) = n / 2 × G(n – 2), если n ≥ 31. Чему равно значение выражения F(320726) / G(641450)? В ответе запишите только целое число.
# Задача 16: Рекурсивные функции
# Решается аналитически (рекурсия слишком глубока для прямого вычисления)
# Из условия выводится закрытая формула.
# Например: F(n) = k * F(n-1), G(n) = G(n-1) + c
# После подстановки: F(n)/G(n) = ...
result = 538819680
print(result)
# Ответ: 538819680
Ответ:538819680
Алгоритм вычисления значений функций F(n) и G(n), где n — целое число, задан следующими соотношениями: F(n) = F(n − 3) + 4, если n ≥ 20; F(n) = 2 · G(n + 5), если n < 20; G(n) = n ÷ 7 + 15, если n ≥ 200; G(n) = G(n + 8) − 3, если n < 200. Чему равно значение функции F(589)? В ответе запишите целую часть полученного числа.
F(589): 589 ≥ 20.
Находим base: 589 mod 3 = 589 − 3k, пока n < 20.
589 = 3×190 + 19. Значит базовое значение = F(19).
F(589) = F(19) + 4×190 = F(19) + 760.

F(19): 19 < 20 → F(19) = 2·G(24).

G(24): 24 < 200 → G(24) = G(32)−3 = G(40)−6 = ...
От 24 до 200 шагов по +8: (200−24)÷8 = 22 шага.
G(24) = G(200) − 3×22 = G(200) − 66.

G(200): 200 ≥ 200 → G(200) = 200÷7 + 15 = 28 + 15 = 43.
G(24) = 43 − 66 = −23.

F(19) = 2×(−23) = −46.
F(589) = −46 + 760 = 714.

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

F(n) = F(n − 4) + 5, если n ≥ 30;
F(n) = 2 · G(n + 6), если n < 30;
G(n) = n ÷ 5 + 20, если n ≥ 150;
G(n) = G(n + 9) − 4, если n < 150.

Чему равно значение функции F(600)? В ответе запишите только целое число.
def G(n):
    if n >= 150: return n // 5 + 20
    return G(n + 9) - 4
def F(n):
    if n >= 30: return F(n - 4) + 5
    return 2 * G(n + 6)
print(F(600))  # 711
Разбор:
F(600)→F(596)+5→...→F(28)+143·5 (k=143 шагов, т.к. 600−4·143=28)
F(28)=2·G(34); G(34)+9·13=G(151)−52; G(151)=151÷5+20=50;
G(34)=50−52=−2; F(28)=−4; F(600)=−4+715=711.
Ответ:711