Cho dãy số: (un) thỏa mãn u1 = u2 = 1 và un = 3un-1 -un-2 với mọi số tự nhiên n >2. Yêu cầu: Nhập vào số nguyên dương n (0<n<=106). In ra số hạng thứ n của dãy. Dữ liệu: Một dòng ghi số n duy nhất. Kết quả: Ghi ra số hạng thứ n của dãy số. Kết quả có thể rất lớn dẫn tới tràn kiểu biểu diễn của số nguyên 64 bit nên ta chia lấy dư cho 109+7 khi in ra. Ví dụ input 2 output 1
1 câu trả lời
Mình gửi bài:
Var A:Array[1..1000000] Of Int64;
i,n:Longint;
Begin
Readln(n);
A[1]:=1; A[2]:=1;
For i:=3 to n do A[i]:=(3*A[i-1]-A[i-2]) mod 1000000009;
Write(A[n]);
Readln;
End.
Câu hỏi trong lớp
Xem thêm