Cod sursa(job #1045815)

Utilizator NCodeMihai X NCode Data 2 decembrie 2013 05:10:58
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream in  ("fact.in" );
ofstream out ("fact.out");

int zero (int mid)
{
    int z=5,nr=0;
    while (z<=mid)
    {
        nr+=mid/z;
        z*=5;
    }
    return nr;
}
 

 
int main()
{
	int p;
    in>>p; 
	
	__int64 start=1;
	__int64 end=100000;
	__int64 mid;
	__int64 int nr=-1;
	__int64 aux;
    while (start<=end)
    {
        mid=(start+end)/2;
        
         aux=zero(mid);
         
        if (aux<p)
            start=mid+1;
        else    
        if (aux>p)
            end=mid-1;
            
        if (aux==p)
        {
            nr=mid;
			end=mid-1;
        }
    }
    
    out<<nr;

     in.close();
    out.close();
    return 0;
}