51nod 1126 求遞推序列的第N項

2022-04-27 11:09:12 字數 852 閱讀 4469

1126 求遞推序列的第n項

基準時間限制:1 秒 空間限制:131072 kb 分值: 10 難度:2級演算法題

收藏關注有乙個序列是這樣定義的:f(1) = 1, f(2) = 1, f(n) = (a * f(n - 1) + b * f(n - 2)) mod 7.

給出a,b和n,求f(n)的值。

input

輸入3個數:a,b,n。數字之間用空格分割。(-10000 <= a, b <= 10000, 1 <= n <= 10^9)
output

輸出f(n)的值。
input示例

3 -1 5
output示例

6
找規律的題

#include using namespace std;

typedef long long ll;

int f[10000]; // 存遞推項。

int v[10][10]; // v[i][j]表示 f[k-1]和f[k]出現的位置,第二次出現就找到了迴圈節了。

int main()

if(v[f[i-1]][f[i]] == 0)else

}n -= start; // 減去不在迴圈節之內的部分。

n = n % round; // 求出n在迴圈節中的位置。

//已知的迴圈節從 start+1 - start+round。

if(n == 0) cout << f[start+round] << endl;

else cout << f[start+n] << endl;

return 0;

}

51nod 1126 求遞推序列的第N項

1126 求遞推序列的第n項 基準時間限制 1 秒 空間限制 131072 kb 分值 10 難度 2級演算法題 有乙個序列是這樣定義的 f 1 1,f 2 1,f n a f n 1 b f n 2 mod 7.給出a,b和n,求f n 的值。input 輸入3個數 a,b,n。數字之間用空格分割...

51Nod 1126 求遞推序列的第N項

include include define maxn 3 define mod 7 using namespace std typedef long long ll int n ll b n 0,c maxn h maxn struct matrix matrix multi matrix a,m...

51Nod 1126 求遞推序列的第N項

題目 有乙個序列是這樣定義的 f 1 1,f 2 1,f n a f n 1 b f n 2 mod 7。給出a,b和n,求f n 的值。輸入 輸入3個數 a,b,n。數字之間用空格分割。10000 a,b 10000,1 n 10 9 輸出 輸出f n 的值。樣例輸入 3 1 5樣例輸出 6分析 ...