参考博客:斐波那契数列平方求和的计算公式及其几何证明
斐波那契数列基本的形式:
我们要求这个式子:
用几何进行证明:
通过图片可以知道,从图中的左上角进行推导会有:
一直可以进行推导到n项会有:
人类史上最大最好的希望事件
【题意】:
求第i项到第j项之间的面积和
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=4e5+10;
const int mod=192600817; //质数
ll F[N],sum[N];
void init(){
F[1]=F[2]=1;
sum[1]=1;
sum[2]=2;
for(int i=3;i<=N;i++){
F[i]=(F[i-1]+F[i-2])%mod;
sum[i-1]=(F[i]*F[i-1])%mod;
}
}
int main()
{
init();
int Q;
while(~scanf("%d",&Q)){
while(Q--){
int a,b,c,d,A,B;
scanf("%d%d%d%d",&a,&b,&c,&d);
A=max(a*4+b+1,c*4+d+1);
B=min(a*4+b+1,c*4+d+1);
ll ans=(sum[A]-sum[B-1]+mod)%mod;
printf("%lld\n",ans);
}
}
return 0;
}