C/C++ 計算數列的第n項
阿新 • • 發佈:2018-12-12
題目描述
一個數列被定義為: f(1) = 1, f(2) = 1, f(n) = (49 * f(n - 1) + 27 * f(n - 2)) mod 11. 給出n, 請計算f(n). 其中mod表示求餘數。
輸入
輸入多組資料,為n的值(1<=n<=1,000,000,000)。
輸出
輸出f(n)的值。
樣例輸入
3 5 9
樣例輸出
10 6 1
#include<iostream> #include<vector> using namespace std; int main() { int n,i; while(cin>>n) { vector<int> v1(10000000); v1[1]=1; v1[2]=1; if(n==1||n==2) cout<<1<<endl; else { for(i=3;i<=n;i++) v1[i]=((49*v1[i-1]+27*v1[i-2])%11); cout<<v1[n]<<endl; } } } #include<stdio.h> int main() { int n,a[1000]={0,1,1},s,i; scanf("%d",&n); for(i=3;i<=n;i++) { a[i]=((49*a[i-1]+27*a[i-2])%11); printf("%d\n",a[i]); } }