Viết chương trình sinh ra một dãy số \(A\) theo công thức sau:
\(A\left[0\right]=1\)
\(A\left[1\right]=3\)
\(A\left[i\right]=A\left[i-1\right]\times2A\left[i-2\right]\)
Đầu vào:
- Dòng 1: Số nguyên \(n\).
Đầu ra:
- Dãy số theo công thức.
| INPUT | OUTPUT |
| 5 | 1 3 6 36 432 |


def generate_sequence(n):
"""Generates the sequence A up to the nth term."""
if n < 0:
return "Please enter a non-negative number."
sequence = [] # This list will hold our sequence
if n >= 0:
sequence.append(1) # A[0] = 1
if n >= 1:
sequence.append(3) # A[1] = 3
for i in range(2, n + 1):
# Calculate A[i] using the rule: A[i] = A[i-1] * 2 * A[i-2]
next_term = sequence[i - 1] * 2 * sequence[i - 2]
sequence.append(next_term)
return sequence
# Let's see the sequence up to the 5th term (A[0] to A[5])
result = generate_sequence(5)
print(result) # Output: [1, 3, 6, 36, 432, 31104]