Cod sursa(job #2557628)

Utilizator xtreme77Patrick Sava xtreme77 Data 25 februarie 2020 21:54:20
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>
#include <cmath>
using namespace std;
 
ifstream f("fact.in");
ofstream g("fact.out");
 
int zeros(int n)
{
    int ans=0;
    while(n)
    {
        ans+=(n/5);
        n/=5;
    }
    return ans;
}

int main()
{
    int p,n;
    f>>p;
    n=5*p;
    if(p==0)
        g<<1;
    else
    {
        int sqr=sqrt(n)+1;
        for(int i=5;i<=n;i=i+sqr)
        {
            int aux=zeros(i);
            if(aux==p) {
                g<<(i-i%5);
				return 0;
			}
			else if(aux>p)
            {
                for(int j= i-sqr; j<i; ++j)
                {
                    if(zeros(j)==p) {
                        g<<j;
						return 0;
					}
                }
                g<<-1;
                return 0;
            }
        }
		g << -1 <<'\n';
    }
    return 0;
}