Cod sursa(job #3717)

Utilizator C_OvidiuCotletz Ovidiu C_Ovidiu Data 28 decembrie 2006 08:12:17
Problema Cutii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<fstream.h>
 long long fib[100],n,kk;
 long long det_nr1(long long x)
{unsigned long long dr;
 dr=n;
 unsigned long long k=0;
while(x>0)
 {for(;fib[dr]>x;dr--);
	x-=fib[dr];
  k+=fib[dr-1];
  }
return k;
}

void formeaza_vect()
{long long i;
 //long long k;
 for(i=1,kk=1;i<=61;i++)
   kk*=2;
 for(i=2,fib[1]=1;fib[i-1]+fib[i-2]<=kk;i++)
  fib[i]=fib[i-1]+fib[i-2];
 n=i-1;
 }
int main()
{long long q,i,a,b;
 //ifstream f("infinit.in");
 //f>>q;
 formeaza_vect();
 q=5000;
 ofstream g("infinit.out");
 for(i=1;i<=q;i++)
  {//f>>a>>b;
   a=1;
	b=kk-i;
   g<<det_nr1(b)-det_nr1(a-1)<<'\n';
   }
 g.close();
 return 0;
 }