Pagini recente » Cod sursa (job #2256402) | Cod sursa (job #839645) | Cod sursa (job #586327) | Cod sursa (job #876765) | Cod sursa (job #513271)
Cod sursa(job #513271)
#include<stdio.h>
FILE*f=fopen("fibo3.in","r");
FILE*g=fopen("fibo3.out","w");
int i,T;
long long F[100],x1,x2,y1,y2,rez;
int min ( int a, int b) {
if ( a < b )
return a;
return b;
}
int main () {
F[1] = F[2] = 1;
long long aux = 1LL << 62;
for ( i = 3 ; F[i-1] <= aux ; ++i )
F[i] = F[i-1] + F[i-2];
fscanf(f,"%d",&T);
while( T-- ){
fscanf(f,"%lld %lld %lld %lld",&x1,&y1,&x2,&y2);
rez = 0;
for ( i = 2 ; F[i] <= x2 + y2 ; ++i ){
if ( F[i] >= x1 + y1 ) {
if ( F[i] <= x1 + y2 )
rez += min(F[i] - x1 - y1 + 1,x2-x1+1);
else
rez += min( y2 - y1 + 1, x2 + y2 - F[i] + 1);
}
}
fprintf(g,"%lld\n",rez);
}
fclose(f);
fclose(g);
return 0;
}