Pagini recente » Cod sursa (job #538339) | Cod sursa (job #1880120) | Cod sursa (job #2729228) | Cod sursa (job #2395875) | Cod sursa (job #724529)
Cod sursa(job #724529)
#include <cstdio>
#include <string>
const int maxN = 101;
using namespace std;
long long rez, F[maxN];
int i, nr, T;
long long x1, x2, y1, y2;
long long mx1, mx2;
int main ()
{
freopen ("fibo3.in", "r", stdin);
freopen ("fibo3.out", "w", stdout);
F[1] = 1; F[2] = 1;
nr = 100;
for (i = 3; i < nr; i++)
F[i] = F[i - 2] + F[i - 1];
scanf ("%d\n", &T);
while (T--) {
scanf ("%lld %lld %lld %lld\n", &x1, &y1, &x2, &y2);
rez = 0;
for (i = 2; i < nr; i++) {
if (F[i] < x1 + y1) continue;
if (F[i] > x2 + y2) break;
mx1 = min (x2, F[i] - y1);
mx2 = max (x1, F[i] - y2);
rez += mx1 - mx2 + 1;
}
printf ("%lld\n", rez);
}
return 0;
}