def gen(n, a0, a1, a2, a3): if n == 4: return a0, a1, a2, a3 = a1, a2, a3, 3 * a2 - a0 if a3 % 7 in (2, 5): yield a3 yield from gen(n - 1, a0, a1, a2, a3) an = [1, 0, 2, 1] for i in gen(100, *an): print(i)
def gen(n, a0, a1, a2, a3): if n == 4: return a0, a1, a2, a3 = a1, a2, a3, 3 * a2 - a0 if a3 % 7 in (2, 5): yield a3 yield from gen(n - 1, a0, a1, a2, a3) an = [1, 0, 2, 1] for i in gen(100, *an): print(i)
1AKU1ну и в чем проблема?
найти последнее число, кратное 3
i % 3
FishHookнужно использовать стек
1AKU1Его по-разному можно использовать. Как конкретно использовать?
нужно использовать стек
>>> def gen(n, a0, a1, a2, a3): ... if n == 4: ... return ... a0, a1, a2, a3 = a1, a2, a3, 3 * a2 - a0 ... if a3 % 7 in (2, 5): ... yield a3 ... yield from gen(n - 1, a0, a1, a2, a3) ... >>> an = [1, 0, 9, 1] >>> stack = list(gen(100, *an)) >>> >>> out = None >>> while stack: ... n = stack.pop() ... if n % 3 == 0: ... out = n ... break ... >>> print(out) 1166035962247502391369 >>>