Cod sursa(job #585050)

Utilizator impulseBagu Alexandru impulse Data 27 aprilie 2011 21:26:30
Problema Fractii Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include<fstream>
#include<iostream>
#include<queue>
using namespace std;
#define FileIn "fractii.in"
#define FileOut "fractii.out"
struct fr
{
    int x, y;
};
int main()
{
    ifstream fin(FileIn);
    int N;
    fin>>N;
    int num = 1;
    queue<fr> Q;
    fr f;     f.x = 1;    f.y = 1;
    Q.push(f);
    while(!Q.empty())
    {
        fr F = Q.front(); Q.pop();
        if(F.x + F.y <= N)
        {
            fr Ff1;
            Ff1.y = F.y;
            Ff1.x = F.x + F.y;
            Q.push(Ff1);
            num++;
        }
        if(F.y + F.x <= N)
        {
            fr Ff1;
            Ff1.y = F.y + F.x;
            Ff1.x = F.x;
            Q.push(Ff1);
            num++;
        }
    }
    ofstream fout(FileOut);
    fout<<num;
    fin.close();
    fout.close();
    return 0;
}