Pagini recente » Cod sursa (job #1002235) | Cod sursa (job #1057864) | Cod sursa (job #341649) | Cod sursa (job #249972) | Cod sursa (job #632002)
Cod sursa(job #632002)
#include<stdio.h>
#include<fstream>
#include<iostream>s
using namespace std;
ifstream f("fibo3.in");
ofstream g("fibo3.out");
#define MaxN 1000
#define ll long long
#define MaxFib (1LL*1000*1000*1000*1000*1000*1000)
#define MaxC 3
ll N,nr,x[MaxC],y[MaxC],MIN,MAX,sol;
ll Fibo[MaxN];
void Fibo3(void)
{
Fibo[0] = Fibo[1] = 1;
for(nr=2;Fibo[nr-1] <= MaxFib;nr++)
Fibo[nr] = Fibo[nr-1] + Fibo[nr-2];
}
inline ll min(ll a,ll b)
{
return a < b ? a:b;
}
inline ll max(ll a,ll b)
{
return a > b ? a:b;
}
int main()
{
Fibo3();
f >> N;
for(int i=1;i<=N;i++)
{
sol = 0;
f >> x[1] >> y[1] >> x[2] >> y[2];
for(int i=1;Fibo[i] <= x[2] + y[2];i++)
if(Fibo[i] >= x[1] + y[1])
sol+=min(x[2],Fibo[i]-y[1])-max(x[1],Fibo[i]-y[2])+1;
g << sol << "\n";
}
return 0;
}