Nu aveti permisiuni pentru a descarca fisierul grader_test5.ok
Cod sursa(job #2609279)
| Utilizator | Data | 2 mai 2020 13:14:36 | |
|---|---|---|---|
| Problema | Factorial | Scor | 20 |
| Compilator | cpp-64 | Status | done |
| Runda | igorj_mentorat1 | Marime | 0.72 kb |
#include <bits/stdc++.h>
#define pb push_back
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
long long p,poww,i,x,ok,s,v[15],st,dr,mij;
int main()
{
f>>p;
if(p==0)
{
g<<1;
return 0;
}
poww=1;
for(i=1; i<=12; i++)
{
poww*=5;
v[i]=poww;
}
st=0;
dr=p*5;
ok=0;
while(st<=dr)
{ mij=(st+dr)/2;
s=0;
for(i=1; i<=12&&v[i]<=mij; i++)
s+=mij/v[i];
if(s==p)
{
g<<mij;
ok=1;
break;
}
if(s<p)
st+=5;
else
dr-=5;
}
if(!ok)
g<<-1;
return 0;
}
