Pagini recente » Cod sursa (job #1178654) | Cod sursa (job #1459425) | Cod sursa (job #2538927) | Cod sursa (job #2729196) | Cod sursa (job #53924)
Cod sursa(job #53924)
#include <stdio.h>
long div(long n,long d){
long s=0,p=d;
while (p<=n){
s+=n/p;
p*=d;
}
return s;
}
int main(){
freopen("pascal.in","r",stdin);
freopen("pascal.out","w",stdout);
long n,i,r,d,d2,d3,d5,r2,r3,r5,nr=0;
scanf("%ld %ld",&n,&d);
d2=div(n,2);
d3=div(n,3);
d5=div(n,5);
for (i=0;i<=n;i++){
r2=div(i,2);
r3=div(i,3);
r5=div(i,5);
r2+=div(n-i,2);
r3+=div(n-i,3);
r5+=div(n-i,5);
switch (d){
case 2:if (d2>r2)nr++;break;
case 3:if (d3>r3)nr++;break;
case 4:if (d2-r2>1)nr++;break;
case 5:if (d5>r5)nr++;break;
case 6:if (d2>r2&&d3>r3)nr++;break;
}
}
printf ("%ld\n",nr);
return 0;
}