Pagini recente » Cod sursa (job #173959) | Cod sursa (job #1542354) | Cod sursa (job #2661164) | Cod sursa (job #3266440) | Cod sursa (job #1347599)
#include <fstream>
#define nmax 5000005
using namespace std;
ifstream f("pascal.in");
ofstream g("pascal.out");
int n,d,sol;
int pow2,pow3,pow5;
int put2[nmax],put3[nmax],put5[nmax];
void test()
{
if (d==2&&pow2>=1)
sol++;
if (d==3&&pow3>=1)
sol++;
if (d==4&&pow2>=2)
sol++;
if (d==5&&pow5>=1)
sol++;
if (d==6&&pow2>=1&&pow3>=1)
sol++;
}
int main()
{
//4999569
int i,j;
f>>n>>d;
for (i=1;i<=n;i++) {
if (i%2==0)
put2[i]=put2[i/2]+1;
if (i%3==0)
put3[i]=put3[i/3]+1;
if (i%5==0)
put5[i]=put5[i/5]+1;
}
for (i=0;i<=n;i++) {
pow2+=put2[n-i+1]-put2[i];
pow3+=put3[n-i+1]-put3[i];
pow5+=put5[n-i+1]-put5[i];
test();
}
g<<sol;
return 0;
}