Pagini recente » Cod sursa (job #358945) | Cod sursa (job #628133) | Cod sursa (job #358826) | Cod sursa (job #988683) | Cod sursa (job #2138151)
#include <fstream>
using namespace std;
int n,d2,d3,d5,j,cr=0,d;
void res()
{
if(d==2)
{
if(d2>=1)
{
cr+=2;
if(j==n/2 && n%2==0)
cr--;
}
}
if(d==3)
{
if(d3>=1)
{
cr+=2;
if(j==n/2 && n%2==0)
cr--;
}
}
if(d==4)
{
if(d2>=2)
{
cr+=2;
if(j==n/2 && n%2==0)
cr--;
}
}
if(d==5)
{
if(d5>=1)
{
cr+=2;
if(j==n/2 && n%2==0)
cr--;
}
}
if(d==6)
{
if(d2>=1 && d3>=1)
{
cr+=2;
if(j==n/2 && n%2==0)
cr--;
}
}
}
int main()
{
ifstream cin("pascal.in");
ofstream cout("pascal.out");
unsigned long long int p,cnt,c2=1,cc;
cin >> n >> d;
if(n==0 || n==1)
{
cout << 0;
return 0;
}
p=n;
cc=n;
while(cc%2==0)
{
cc=cc/2;
d2++;
}
while(cc%3==0)
{
cc=cc/3;
d3++;
}
while(cc%5==0)
{
cc=cc/5;
d5++;
}
cnt=n-1;
c2=2;
for(j=1; j<=n/2; j++)
{
res();
cc=cnt;
while(cc%2==0)
{
cc=cc/2;
d2++;
}
while(cc%3==0)
{
cc=cc/3;
d3++;
}
while(cc%5==0)
{
cc=cc/5;
d5++;
}
cc=c2;
while(cc%2==0)
{
cc=cc/2;
d2--;
}
while(cc%3==0)
{
cc=cc/3;
d3--;
}
while(cc%5==0)
{
cc=cc/5;
d5--;
}
cnt--;
c2++;
}
cout << cr;
return 0;
}