Pagini recente » Cod sursa (job #833607) | Cod sursa (job #638980) | Cod sursa (job #859185)
Cod sursa(job #859185)
#include <fstream>
using namespace std;
ifstream cin("pascal.in");
ofstream cout("pascal.out");
const int rmax = 5000002;
int R, D;
short m[rmax][3];
short curr[3], cond[3];
const int divs[3] = {2,3,5};
int main()
{
cin>>R>>D;
for(int k = 0;k < 3;k++) {
while(D%divs[k] == 0) {
cond[k]++;
D /= divs[k];
}
}
for(int i = 2;i <= R;i++) {
for(int aux = i, k = 0;k < 3;k++) {
while(aux%divs[k] == 0) {
aux /= divs[k];
m[i][k]++;
}
}
}
int ans = 0;
for(int i = 1;i <= R;i++) {
bool isDivisible = true;
for(int k = 0;k < 3;k++) {
curr[k] += m[R - i + 1][k];
curr[k] -= m[i][k];
isDivisible &= (curr[k] >= cond[k]);
}
ans += isDivisible;
}
cout<<ans;
return 0;
}