Pagini recente » Cod sursa (job #677043) | Cod sursa (job #660946) | Cod sursa (job #2289778) | Cod sursa (job #2318059) | Cod sursa (job #476624)
Cod sursa(job #476624)
#include <algorithm>
#include <stdio.h>
#define MAX 10000000000000000LL
#define ll long long
using namespace std;
int n;
ll fib[128];
int main()
{
freopen("fibo3.in", "r", stdin);
freopen("fibo3.out", "w", stdout);
scanf("%d", &n);
fib[0] = fib[1] = (ll) 1;
for (int i = 1; fib[i++] <= MAX; )
fib[i] = fib[i - 1] + fib[i - 2];
for (int i = 1; i <= n; i++)
{
ll x1, y1, x2, y2;
scanf("%lld %lld %lld %lld", &x1, &y1, &x2, &y2);
ll sol = 0;
for (int i = 0; fib[i++] <= MAX; )
{
ll xf = fib[i] - y1;
ll xs = fib[i] - y2;
sol += (ll) max((ll) 0, 1 + min(x2, xf) - max(x1, xs));
}
printf("%d\n", sol);
}
fclose(stdin);
fclose(stdout);
return 0;
}