Cod sursa(job #1758976)

Utilizator fanache99Constantin-Buliga Stefan fanache99 Data 18 septembrie 2016 12:02:13
Problema Fibo3 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>
#include <vector>
#include <algorithm>

using namespace std;

ifstream cin("fibo3.in");
ofstream cout("fibo3.out");

const int MAXF = 75;

long long fibonacci[1 + MAXF];

void Precompute() {
    fibonacci[0] = fibonacci[1] = 1;
    for (int i = 2; i <= MAXF; i++)
        fibonacci[i] = fibonacci[i - 1] + fibonacci[i - 2];
}

int main() {
    Precompute();
    int tests;
    cin >> tests;
    for (int test = 1; test <= tests; test++) {
        long long x1, y1, x2, y2;
        cin >> x1 >> y1 >> x2 >> y2;
        long long answer = 0;
        for (int i = 1; i <= MAXF; i++)
            if (fibonacci[i] >= x1 + y1 && fibonacci[i] <= x2 + y2)
                answer = answer + 1 + min(x2, fibonacci[i] - y1) - max(x1, fibonacci[i] - y2);
        cout << answer << "\n";
    }
    return 0;
}