急求:穷举列出所有的组合的算法

jnsujihz 2003-03-08 09:47:24
俺想列出C(30,7)的所有组合,请高手帮忙,万分感谢!
...全文
235 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
despider 2003-03-08
  • 打赏
  • 举报
回复
TC编译成功, 输出C(10, 5)的组合, 改变M, N的值可以输出其他组合
注意:输出C(30, 7)会用很长时间, 这与算法无关
good luck!

#include <iostream.h>
#include <conio.h>
#define M 10
#define N 5
int s[8];
void print()
{
for (int i=1; i<=N; i++)
{
cout<<s[i]<<" ";
}
cout<<endl;
}
void zuhe(int a, int n)
{
if (n<=N)
{
int i;
for (i=a; i<=M-N+n; i++)
{
s[n]=i;
if (n==N)
print();
else
zuhe(a+1, n+1);
a++;
}
}
}

void main()
{
int i;
zuhe(1, 1);
getch();
}
wfy 2003-03-08
  • 打赏
  • 举报
回复
main()
{
int c[31][8];
int i,j;
for(i=0;i<=31;i++)
for(j=0;j<=8;j++)
printf("%d",c[i][j]);
}
不知道这样是不是符合你的意思!
多多指教!

70,037

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧