Cod sursa(job #1125791)

Utilizator TediConstantinescu Adrian Tedi Data 26 februarie 2014 19:27:45
Problema Pascal Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <iostream>
using namespace std;
int fact(int a)
{
	int sum=1;
	if(a==0 || a==1) 
		return 1;
	else
		for(int b=1; b<=a; b++)
			sum=sum*b;
	return sum;
}
int main()
{

	freopen("pascal.in","r+", stdin);
    freopen("pascal.out", "w", stdout);
	int n;
	int D;
	int nr=0;
	int a[5000];
	cin>>n;
	cin>>D;
	if(D<2 || D>6)
	{
		cout<<0;
		return 0;
	}
	for(int j=0; j<=n/2; j++)
			a[j]=fact(n)/(fact(n-j)*fact(j));

	for(int i=0; i<=n/2; i++)
	{
		if(a[i]%D==0)
			nr++;
	}
	if(n%2==0)
		cout<<nr*2-1;
	else
		cout<<nr*2;
	system("pause");
	return 0;
}