1317:【例5.2】组合的输出 深搜题解

技术1317:【例5.2】组合的输出 深搜题解 1317:【例5.2】组合的输出 深搜题解1317:【例5.2】组合的输出
时间限制: 1000 ms 内存限制: 65536 KB提交数: 2425

1317:[例5.2]深入搜索组合的输出,寻找问题解决方案。

1317:【例5.2】组合的输出

时间限制: 1000毫秒内存限制: 65536 KB。

提交编号: 24255通过编号: 11944。

【题目描述】

排列组合是常用的数学方法,其中组合是从n个元素中提取r个元素(无序且rn)。我们可以简单地把n个元素理解为自然数1,2,…,n,并从中取任意数量的r。

现在你需要递归地输出所有的组合。

例如,n=5,r=3,所有组合为:

1 2 3 1 2 4 1 2 5 1 3 4 1 3 5 1 4 5 2 3 4 2 3 5 2 4 5 3 4 5

#includebits/stdc。h

使用命名空间标准;

const int N=25

int n,r;

int路径[N];//保存路径。

布尔街;//保存是否选择了该号码。

void DFS(int x){ 0

If(x==r 1)//路径结束。

{

for(int I=1;I=r;I )//输出你的路径。

coutsetw(3)路径[I];

coutendl

返回;

}

for(int I=1;I=n;I )//找出路径中存在的正确数字。

{

if(ipath[x-1]!St[i])//大于前一个数字,尚未被选中。

{

路径[x]=I;

ST[I]=1;

外勤部(x1);//递归实现DFS。

ST[I]=0;//实现后,当前位未被选中,因此被清零。

}

}

}

int main()

{

cinnr

外勤部(1);

返回0;

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/62064.html

(0)

相关推荐

  • java中怎么去掉List集合中重复的元素

    技术java中怎么去掉List集合中重复的元素本篇内容介绍了“java中怎么去掉List集合中重复的元素”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希

    攻略 2021年10月29日
  • mairadb+galera+haproxy+keepalived如何实现mysql负载均衡与高可用

    技术mairadb+galera+haproxy+keepalived如何实现mysql负载均衡与高可用这篇文章主要介绍了mairadb+galera+haproxy+keepalived如何实现mysql负载均衡与高可

    攻略 2021年12月8日
  • Java项目的UML反向工程工具是什么

    技术Java项目的UML反向工程工具是什么这篇文章主要介绍“Java项目的UML反向工程工具是什么”,在日常操作中,相信很多人在Java项目的UML反向工程工具是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操

    攻略 2021年11月2日
  • 怎么使用Flask构建简单的RESTful服务

    技术怎么使用Flask构建简单的RESTful服务本篇文章给大家分享的是有关怎么使用Flask构建简单的RESTful服务,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一

    攻略 2021年10月29日
  • centos7 安装openGauss极简版本

    技术centos7 安装openGauss极简版本 centos7 安装openGauss极简版本1 基础环境准备:
    系统:
    [root@bogon ~]# cat /etc/redhat-releas

    礼包 2021年12月15日
  • eclipse怎样配置mybatis(eclipsemybatis插件推荐)

    技术Eclipse的插件MyBatis Editor有什么用这篇文章将为大家详细讲解有关Eclipse的插件MyBatis Editor有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所

    攻略 2021年12月15日