当前位置: 首页 > news >正文

品牌营销策划师win10优化软件

品牌营销策划师,win10优化软件,云南网网站,江苏省住房和城乡建设厅政务网站给定一个整数 nn,将数字 1∼n1∼n 排成一排,将会有很多种排列方法。 现在,请你按照字典序将所有的排列方法输出。 输入格式 共一行,包含一个整数 nn。 输出格式 按字典序输出所有排列方案,每个方案占一行。 数据…

给定一个整数 nn,将数字 1∼n1∼n 排成一排,将会有很多种排列方法。

现在,请你按照字典序将所有的排列方法输出。

输入格式

共一行,包含一个整数 nn。

输出格式

按字典序输出所有排列方案,每个方案占一行。

数据范围

1≤n≤71≤n≤7

输入样例:
3
输出样例:
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1
难度:简单
时/空限制:1s / 64MB
总通过数:95837
总尝试数:121097
来源:模板题
算法标签

思路

1.深度优先搜索:只要所有数字使用完成,就输出该种情况

    if(u>n){for(int i=1;i<=n;i++)   printf("%d ",path[i]);printf("\n");return;}

2.path[i]表示一条路径,每一个位置可以放置一个数字

3.恢复现场:改变路径上面的数字,数字的使用状态(数字被使用之后标记为true) ,递归到下一个数字,然后恢复现场,把路径上面的数字恢复为0(其实不恢复也没关系,因为下一次使用赋值会直接覆盖原来的数字),把数字的使用状态恢复为未使用(false)

    for(int i=1;i<=n;i++){if(!state[i]){path[u]=i;state[i]=true;dfs(u+1);path[u]=0;state[i]=false;}}

代码

#include<iostream>
using namespace std;const int N=10;
int n,path[N];
bool state[N];void dfs(int u)
{if(u>n){for(int i=1;i<=n;i++)   printf("%d ",path[i]);printf("\n");return;}for(int i=1;i<=n;i++){if(!state[i]){path[u]=i;state[i]=true;dfs(u+1);path[u]=0;state[i]=false;}}
}int main()
{scanf("%d",&n);dfs(1);return 0;
}

 

 

http://www.mmbaike.com/news/41532.html

相关文章:

  • 陕煤建设集团铜川分公司网站百度官网客服
  • gateface做网站网址解析ip地址
  • 广告设计网站建设怎么做网站排名优化软件有哪些
  • jsp网站设计教学做一体化教程磁力引擎
  • 网站建设crm谷歌app下载 安卓
  • 深圳手机网站制作公司肇庆seo优化
  • 泉州企业做网站辽源seo
  • 房地产营销网站建设色盲能治好吗
  • 上海市装修公司排名城关网站seo
  • 网站个人博客怎么做厨师培训
  • 办公室效果图百度seo优化公司
  • 伊春网站建设西安官网seo公司
  • 网站开发用c 语言小程序搭建教程
  • 移动互联网开发客户抖音优化
  • php动态网站开发第一章答案搜索广告是什么意思
  • .jsp网站开发技术手机seo排名
  • 免费的个人简历模板 简约杭州seo按天计费
  • 建一个商业网站要多少钱seo关键词快速排名软件
  • 郑州专业网站制作网络营销seo优化
  • 协会门户网站建设百度关键词优化怎么做
  • 公司转让合同协议书范本网站编辑seo
  • 福清网站建设深圳广告策划公司
  • 电子业网站建设个人网站该怎么打广告
  • 做网站的 深圳外贸网站建设优化推广
  • 网站制作容易吗怎么样青岛爱城市网app官方网站
  • 设计网站实现PDF在线阅读需要怎么做5118
  • 域名网站备案管理系统自媒体视频发布平台
  • 阿里云怎么建设网站seo资料网
  • 河南省政府门户网站百城建设搜索关键词是什么意思
  • 招聘网站做精准 置顶温州网站建设