# include <conio.h>;
# include <iostream.h>;
# define MAX 50
int a,b;
int c[MAX][MAX];
int i,j;
int comb(int n,int k)
{
if(c[n][k]>=1) return c[n][k];
else
{
c[n][k]=comb(n-1,k)+comb(n-1,k-1);
c[n][n-k]=c[n][k];
return c[n][k];
}
}
void main(void)
{
clrscr();
cout<<"Intr n,k :\n";
cin>>a>>b;
for(i=0;i<a;i++)
for(j=0;j<b;j++)
c[i][j]=-1;
for(i=0;i<a;i++)
{
c[i][0]=1;
c[i][i]=1;
if(i>=1)
{
c[i][1]=i;
c[i][i-1]=i;
}
}
cout<<"\ncomb("<<a<<","<<b<<")= "<<comb(a,b);
getche();
}
Niciun comentariu:
Trimiteți un comentariu