Pagini recente » Cod sursa (job #2126773) | Cod sursa (job #1981403) | Cod sursa (job #3279001) | Borderou de evaluare (job #1985655) | Cod sursa (job #1984333)
#include <bits/stdc++.h>
using namespace std;
int v2[5000001],v3[5000001],v5[5000001];
int main()
{
int n,d,i,nr=0,a=0,b=0;
freopen("pascal.in","r",stdin);
freopen("pascal.out","w",stdout);
scanf("%d%d", &n, &d);
for(i=1;i<=n;i++){
if (i%2==0)
v2[i]=v2[i/2]+1;
if (i%3==0)
v3[i]=v3[i/3]+1;
if (i%5==0)
v5[i]=v5[i/5]+1;
}
if (d==2 || d==4)
for (i=1;i<=n;i++) {
a=a+v2[n-i+1]-v2[i];
if (d==2 && a>0)
nr++;
if (d==4 && a>1)
nr++;
}
if (d==3)
for (i=1;i<=n;i++) {
a=a+v3[n-i+1]-v3[i];
if (a>0)
nr++;
}
if (d==5)
for (i=1;i<=n;i++) {
a=a+v5[n-i+1]-v5[i];
if (a>0)
nr++;
}
if (d==6) {
for (i=1;i<=n;i++) {
a=a+v2[n-i+1]-v2[i];
b=b+v3[n-i+1]-v3[i];
if (a>0 && b>0)
nr++;
}
}
printf("%d", nr);
return 0;
}