#include <iostream>
using namespace std;
void perm(int a[], int n, int m, int out[], int k, int used[])
{
if(k == m)
{
for(int i = 0; i < m; i++)
{
cout << out[i] << " ";
}
cout << endl;
}
for(int i = 0; i < n; i++)
{
if(used[i] == 0)
{
used[i] = 1;
out[k] = a[i];
perm(a, n, m, out, k+1, used);
used[i] = 0;
}
}
}
void combine(int a[], int n, int m, int out[], int k, int used[], int startpos)
{
if(k == m)
{
for(int i = 0; i < m; i++)
{
cout << out[i] << " ";
}
cout << endl;
}
for(int i = startpos; i <= startpos+(n-m); i++) //
{
if(used[i] == 0)
{
used[i] = 1;
out[k] = a[i];
combine(a, n, m, out, k+1, used, startpos+1);
used[i] = 0;
}
}
}
int main()
{
int a[] = {1,2,3,4};
int used[5] = {0};
int out[5] = {0};
//perm(a, sizeof(a)/sizeof(int), 3, out, 0, used);
combine(a, sizeof(a)/sizeof(int), 3, out, 0, used, 0);
return 0;
}
排列与组合
最新推荐文章于 2024-05-21 19:38:19 发布
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
ACE-Step
音乐合成
ACE-Step
ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

4433

被折叠的 条评论
为什么被折叠?



