chúng ta phải tìm ra thuật ngữ thứ n của loạt bài này http://oeis.org/A028859thứ n hạn của loạt
n < = 1000000000
câu trả lời nên được modulo 1000000007
i đã viết mã nhưng lần vượt quá giới hạn khi na là số lượng lớn.
#include<iostream>
using namespace std
int main()
{
long long int n;
cin>>n;
long long int a,b,c;
a=1;
b=3;
int i;
for(i=3;i<=n;i++)
{
c=(2ll*(a+b))%1000000007;
a=b;
b=c;
}
cout<<c;
}
Bất kỳ cơ hội nào bạn có thể dán vào mẫu mã sạch hơn mẫu này, sử dụng thụt lề thích hợp và tránh không gian trắng quá mức? –
Điều này có liên quan gì đến lập trình động? – Mathias
Hãy thử phiên bản đệ quy của thuật toán này và bạn sẽ hiểu đây là thuật toán lập trình động. Về cơ bản, chúng tôi lưu trữ các giá trị tính toán của n-1 và n-2. Hãy nói rằng, đó là một verson cơ bản của DP. –