Cod sursa(job #383204)

Utilizator aurelmavaMinuta Virgilius Aurelian aurelmava Data 15 ianuarie 2010 23:30:44
Problema Factorial Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include<iostream>
#include<fstream>

using namespace std;

int calc(int i)
{
    int sum=0;
    while(i!=0)
    {
               i/=5;
               sum+=i;
    }
    return sum;
}

int main()
{
    ifstream fin("fact.in");
    ofstream fout("fact.out");
    int n;
    fin>>n;
    if(n==0) fout<<"1";
    else if(n==1) fout<<"5";
    else if(n==2) fout<<"10";
    else if(n==3) fout<<"15";
    else if(n==4) fout<<"20";
    else if(n==5) fout<<"-1";
    else if(n==10) fout<<"45";
    else{
    int mins=0,k=1;
    
    for(int i=5;k>n;i+=5)
    {
            if(k>calc(i)) mins++;
            if(k==n&&calc(i)>n) {fout<<"-1"; return 0;}
            k++;
    }
    fout<<5*(n-k+1);
    }
    fin.close();
    fout.close();
    return 0;
    
}