Cod sursa(job #1294904)

Utilizator radu_uniculeu sunt radu radu_unicul Data 18 decembrie 2014 14:19:22
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.1 kb
#include <fstream>
using namespace std;
long long int p,minim=1,maxim=100000000000,mid,valoare=-1;
bool flag=0;
long long int p5(long long int x){
                                    long long int s=0;
                                    while(x>0){
                                                s=s+x/5;
                                                x=x/5;
                                              }
                                    return s;
                                  }
int main()
{
    ifstream fin("fact.in");
    ofstream fout("fact.out");
    fin>>p;
    while(minim<=maxim){
                            mid=(minim+maxim)/2;
                            if(p5(mid)==p) {
                                                fout<<mid-mid%5;
                                                flag=1;
                                                break;
                                              }
                            else if(p5(mid)>p) maxim=mid-1;
                            else if(p5(mid)<p) minim=mid+1;
                       }
    fout<<valoare;
    return 0;
}