Cod sursa(job #2650082)
| Utilizator | Data | 17 septembrie 2020 14:44:15 | |
|---|---|---|---|
| Problema | Pascal | Scor | 40 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.61 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("pascal.in");
ofstream out("pascal.out");
long long gfact(long long fact, int base)
{
long long nr_div = 0;
while(fact)
{
nr_div += fact / base; fact /= base;
}
return nr_div;
}
int main()
{
long long r; int d; in >> r >> d;
long long cnt = 0;
int initial_d = d;
if(d == 6) d = 3;
if(d == 4) d = 2;
for(long long j = 0; j < r; j++)
{
if(gfact(r, d) - gfact(r-j, d) - gfact(j, d) > ((initial_d == 4) ? (1) : (0)))
cnt ++;
}
out << cnt;
}
