Pagini recente » Cod sursa (job #1461335) | Cod sursa (job #3226916) | Cod sursa (job #3265737) | Cod sursa (job #1265752) | Cod sursa (job #1289190)
#include <cstdio>
using namespace std;
int R, D, Pow2, Pow3, Pow5, Ans;
int main()
{
freopen("pascal.in", "r", stdin);
freopen("pascal.out", "w", stdout);
scanf("%i %i", &R, &D);
for(int i = 1; i <= (R + 1) / 2; ++ i)
{
int X = R - i + 1;
while(X % 2 == 0) X /= 2, Pow2 ++;
while(X % 3 == 0) X /= 3, Pow3 ++;
while(X % 5 == 0) X /= 5, Pow5 ++;
X = i;
while(X % 2 == 0) X /= 2, Pow2 --;
while(X % 3 == 0) X /= 3, Pow3 --;
while(X % 5 == 0) X /= 5, Pow5 --;
bool OK = 0;
if(D == 2 && Pow2 >= 1) OK = 1;
else if(D == 3 && Pow3 >= 1) OK = 1;
else if(D == 4 && Pow2 >= 2) OK = 1;
else if(D == 5 && Pow5 >= 1) OK = 1;
else if(D == 6 && Pow2 >= 1 && Pow3 >= 1) OK = 1;
if(OK)
{
if(R % 2 == 0 && (R + 1) / 2 == i) Ans ++;
else Ans += 2;
}
}
printf("%i\n", Ans);
}