Cod sursa(job #1206117)
| Utilizator | Data | 8 iulie 2014 22:06:51 | |
|---|---|---|---|
| Problema | Factorial | Scor | 55 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.51 kb |
#include<cstdio>
#define InFile "fact.in"
#define OutFile "fact.out"
using namespace std;
long long p;
unsigned long long nr;
unsigned short v[3000],i;
int main()
{
FILE *f=fopen(InFile,"r");
FILE *g=fopen(OutFile,"w");
fscanf(f,"%lld",&p);
if (p==0){ fprintf(g,"1");return 0;}
while(p>0)
{
nr+=5;++v[1];i=1;--p;
while(v[i])
if(v[i]==5){v[i]=0;v[++i]++;--p;}else break;
}
if(p<0)fprintf(g,"-1");
else fprintf(g,"%lld",nr);
return 0;
}
