Pagini recente » Cod sursa (job #1326982) | Cod sursa (job #1726309) | Cod sursa (job #368106) | Cod sursa (job #1669552) | Cod sursa (job #466426)
Cod sursa(job #466426)
#include<stdio.h>
#define ll long long
int n,u;
ll x1,x2,y1,y2,sol,a,b,smax;
ll yl1,yl2,s1,s2,f[150];
ll maxim(const ll& a,const ll& b)
{
if(a>b)
return a;
return b;
}
ll minim(const ll& a,const ll& b)
{
if(a<b)
return a;
return b;
}
int main ()
{
int i,j;
freopen("fibo3.in","r",stdin);
freopen("fibo3.out","w",stdout);
scanf("%d",&n);
f[0]=1;
f[1]=1;
ll a=100000000,b=10000000;smax=a*b;
for(i=2;f[i-1]<=2*smax;i++)
f[i]=f[i-2]+f[i-1];
u=i-1;
for(i=1;i<=n;i++)
{
scanf("%lld%lld%lld%lld",&x1,&y1,&x2,&y2);
s1=x1+y1;
s2=x2+y2;
for(j=1;j<=u && f[j]<=s2;j++)
if(f[j]>=s1)
{
yl1=f[j]-x2;
yl2=f[j]-x1;
yl1=maxim(yl1,y1);
yl2=minim(yl2,y2);
sol+=yl2-yl1+1;
}
printf("%lld\n",sol);
sol=0;
}
return 0;
}