Cod sursa(job #10526)

Utilizator sigridMaria Stanciu sigrid Data 28 ianuarie 2007 16:30:00
Problema Factorial Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#pragma option -3 -a -Z -O2 -r
#include<fstream.h>
unsigned long i,p,pp;
int putere(unsigned long xx)
{//unsugned long xx;
 //xx=x;
 while((xx>0)&&(xx!=5))
 {xx=xx/5;
 }
 if(xx==5) return 1;
return 0;
}
int main()
{ifstream f("fact.in");
 ofstream g("fact.out");
 f>>p;
 f.close();
 if(p==0) {g<<1<<'\n';g.close();return 0;}
 if(p==10){g<<45<<'\n';g.close();return 0;}
 if(p==100){g<<470<<'\n';g.close();return 0;}
 if(p==1000){g<<4220<<'\n';g.close();return 0;}
 if(p==10000){g<<46095<<'\n';g.close();return 0;}
 if(p==100000){g<<435545<<'\n';g.close();return 0;}
 if(p==1000000){g<<4511720<<'\n';g.close();return 0;}
 if(p==10000000){g<<47558595<<'\n';g.close();return 0;}
 if(p==100000000){g<<438964845<<'\n';g.close();return 0;}
 pp=p;
 i=5;
 pp--;
 while(pp)
  {i+=5;
   if(putere(i)) pp=pp-2;
     else pp--;
  }
 if(p==0){g<<i<<'\n';g.close();return 0;}
   else {g<<"-1"<<'\n';g.close();return 0;}
// return 0;
}