Cod sursa(job #874435)

Utilizator tr0gl0Radu - Iulian tr0gl0 Data 8 februarie 2013 14:11:53
Problema Factorial Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>
#include <math.h>
using namespace std;

double zero(double n){
	double z,k,kmax;
	z=0;
	kmax=floor((log10(n)/log10(5)));
	for(k=1; k<=kmax; k++)
		z+=floor(n/pow(5,k));

	return z;
}

int main() {
	double p,n,rez;
	
	ifstream fin("fact.in");
    ofstream fout("fact.out");
	//cout<<"Nr zerouri: ";
	fin>>p;
	rez=-1;

	if (p>0) {
		n=4*p;
		while (n<=5*p) {
			
			if (zero(n)<p) {
					n++;
					
			}
				
				
			else
				if (zero(n)==p){
				rez=n;
				fout<<rez<<endl;
				break; 
				
				}
				else {
					fout<<rez<<endl;
					break; 
				}
		}
	}
	else 
		fout<<1<<endl;
	    fin.close();
        fout.close();
	return 0;
}