B. Jzzhu とシーケンス
テストごとの制限時間
1 秒
テストごとのメモリ制限
256 メガバイト入力
標準入力
出力
標準出力
Jzzhu は、シーケンスの種類では、次のプロパティを満たします:
x と y が与えられています。fn モジュロ 1000000007 (109?+?7) を計算してください。
入力
最初の行には 2 つの整数 x と y が含まれています(| x|,?|y|?≤?109)。 2 行目には単一の整数 n (1?≤?n?≤?2・109) が含まれています。
出力
fn モジュロ 1000000007 (109?+?7) を表す単一の整数を出力します。
サンプルテスト
入力
2 33
出力
入力
0 -12
出力
1000000006
注
最初のサンプルでは、f2?=?f1?+?f3 , 3?=?2?+?f3, f3?=?1.
2 番目のサンプルでは、 f2?=??-?1; ?-?1 モジュロ (109?+?7) は (109?+?6) に等しい。 f[i-1]-f[i-2];入力f[1]とf[2];第n個の数の値を求める;如果你想打表的话劝你放弃吧!この周期は 6;
#include<stdio.h>int main(){ __int64 a[10],x,y,n; int i; scanf("%I64d%I64d",&x,&y); a[1]=x;a[2]=y; for(i=3;i<=6;i++) a[i]=a[i-1]-a[i-2]; a[0]=a[6]; scanf("%I64d",&n); n=n%6; while(1) { if(a[n]<0) a[n]+=1000000007; else break; } printf("%I64d\n",a[n]%1000000007); return 0;}