Cod sursa(job #1588465)
| Utilizator | Data | 3 februarie 2016 08:50:43 | |
|---|---|---|---|
| Problema | Factorial | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.63 kb |
#include <fstream>
using namespace std;
ifstream f("factorial.in");
ofstream g("factorial.out");
class acumulare{
public:
int p[26];
acumulare(){
for(int i = 0; i <= 25; i++) p[i] = 0;
}
int next(){
int i = 0, r = 1;
p[i]++;
while(p[i] % 5 == 0 && p[i] != 0){
r++;
p[i+1]++;
p[i++] = 0;
}
return r;
}
};
int main()
{
long n, i, p = 0, ct, s = 0;
acumulare hektori;
f >> n;
while(p < n){
p += hektori.next();
s += 5;
}
if(p == n) g << s;
else g << -1;
}
