楼上的太强了!这种排列组合该怎样写代码呢? 请您提示。多谢!
如果只是计算的话,那就是C(18,4)-C(6,4)-2*C(5,4)-2*C(4,4);
只要有求组合数的函数就可以了,想必大家都应该知道吧.
C(n,m)=n!/((n-m)!m!)
呵呵!这是计算组合的一个函数!
#include <stdio.h>
int main(void)
{
long m, k;
scanf("%ld%ld", &m, &k);
int zhang(long m,long k);
printf("%d", zhang(m,k));
return 0;
}
int zhang(long m,long k)
{
int i, j, sum = 1;
k = k > (m/2)?m - k:k;
for(i = m, j = 1;i > m - k;i --,j ++)
{
sum *= (float)i/j;
}
return sum;
}