Cod sursa(job #1649501)

Utilizator AnaRaduAna-Maria Radu AnaRadu Data 11 martie 2016 13:54:18
Problema Factorial Scor 15
Compilator c Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <stdio.h>
#define max 1<<29
int verif(int n,int k){
    int nr=0,k0=k;
    while(n/k!=0){
        nr+=n/k;
        k*=k0;
    }
    return nr;
}
int main(){
    FILE *fin,*fout;
    fin=fopen("fact.in","r");
    fout=fopen("fact.out","w");
    int i=0,k,pas=max;
    fscanf(fin,"%d",&k);
    while(pas!=0){
        if(verif(i+pas,5)<k)
            i+=pas;
        pas/=2;
    }
    if(verif(i+pas,5)==k)
        fprintf(fout,"%d",i+1);
    else
        fprintf(fout,"-1");
    fclose(fin);
    fclose(fout);
    return 0;
}