从前M个字母中取N个的无重复排列(回溯)
转载请注明出处
题目描述
输出从前M个字母中取N个的无重复字母排列
Input
输入M N
1<=M=10, N<=M
Output
按字典序输出排列
Sample Input
4 2
Sample Output
A B A C A D B A B C B D C A C D C D D A D B D C
Hint
要用到剪枝
1 /** 2 网址: http://www.codeup.cn/problem.php?id=2906 3 题目: 从前M个字母中取N个的无重复排列[2*+] 4 */ 5 #include <stdio.h> 6 #include <memory.h> 7 8 char s[15]; 9 char str[]={'A','B','C','D','E','F','G','H','I','J','H','L','M','N'}; 10 int M,N; 11 int colected[15];///实时标记已入选字符 12 int stack[15],top = 0; 13 14 void print(){ 15 int i; 16 for(i = 0; i < N - 1; i++){ 17 printf("%c ",s[i]); 18 } 19 printf("%c\n",s[i]); 20 } 21 22 void dfs(int cur,int last){ 23 int i; 24 if(cur == N){ 25 print(); 26 colected[stack[--top]] = 0; 27 return ; 28 } 29 30 for(i = 0; i < M; i++){ 31 if(colected[i] != 1){ 32 s[cur] = str[i]; 33 stack[top++] = i; 34 colected[i] = 1; 35 dfs(cur + 1,i); 36 } 37 38 } 39 if(i == M) 40 colected[stack[--top]] = 0; 41 } 42 43 int main(void){ 44 while(scanf("%d%d",&M,&N) != EOF){ 45 dfs(0,0); 46 } 47 return 0; 48 }
转载于:https://www.cnblogs.com/yfs123456/p/5402525.html
从前M个字母中取N个的无重复排列(回溯)相关推荐
- c语言字母中取模是什么意思,c语言如何取模运算
匿名用户 1级 2018-06-06 回答 C语言用取模运算符"%"进行取模运算. 取模运算符"%"的作用是求两个数相除的余数.例如,请看下面这段代码: x=1 ...
- 在Excel中取汉字的英文首字母或者全拼
与上一篇文章相关,在Excel中取汉字的英文首字母 在Excel中使用,觉得麻烦的,直接点最下面,复制附件,里面有例子,非常好用非常好用 需要说明的是,代码不是我写的,原作者如果看到了可以联系我,我会 ...
- python字典取值_python 字典中取值的两种方法小结
python 字典中取值的两种方法小结 如下所示: a={'name':'tony','sex':'male'} 获得name的值的方式有两种 print a['name'],type(a['name ...
- 怎样从tensorflow的generator object Estimator.predict at 0x7fb1ecefeaf0中取数据
怎样从tensorflow的<generator object Estimator.predict at 0x7fb1ecefeaf0>中取数据 通过以下代码: predictions = ...
- loadrunner中的c函数----从参数列表中取参数并与特定字符进行字符串比较。
今天在www.sztest.net上看到一个关于lr的问题,自己试着解决了一下.主要是想做出一个从参数列表中取参数,并和字符串常量进行比较的功 能.把代码贴到下面.其实是很简单的.问题主要出现在lr_ ...
- vue里获取不到data_vue methods中取不到data值
vue methods中取不到data值 export default { name: "sysAdd", data() { return { form: { name: '', ...
- hdu4810 Cn中取i异或和
题意: 给你n个数,让你输出n个数,没一次输出的是在这n个数里面取i个数异或的和(所有情况<C n中取i>). 思路: 首先把所有的数都拆成二进制,然后把他们在某一位上 ...
- Delphi 中取本机的计算机名、IP地址、Windows登录的用户名
//作者:陆岛工作室 XOtec Studio //组件库:XOtecExpress. 几个在Delphi 中取本机的计算机名.IP地址.Windows登录的用户名的函数. uses Windows, ...
- Thymeleaf读取model里面的对象||Thymeleaf读取model里面的集合||Themeleaf在js中取值||访问带参数的消息||ThymeleafObjects的使用[取三大作域的值
Thymeleaf读取model里面的对象 Student.java package com.sxt.domain;import lombok.AllArgsConstructor; import l ...
最新文章
- C#读取excel数据到datatable中
- HDU2018题求母牛数量C++
- Exadata上的分页查询性能测试
- VTK:相互作用之MoveAGlyph
- Android线程详解
- 迭代器、与集合的坑使用时要注意
- Nat Biotechnol | 杨弋团队报道RNA光遗传学工具,可时空精确操纵活细胞RNA代谢与功能...
- java判断字符串是子串_【Java】判断字符串是否包含子字符串
- C#:获取web.config中配置的IP地址
- dnf外挂java代码,使用Java实现简朴的斗地主案例_rust辅助,绝地求生卡盟
- vscode 软件 git提交代码步骤(结合webstorm软件)
- 嵌入式c语言编程,嵌入式C语言编程集萃.pdf
- 解决Linux内核问题实用技巧之-dev/mem的新玩法
- 使用 git tag 给项目打标签
- CSS——微信朋友圈图片样式实现方法
- 计算机金融专业美国学校排名,美国金融专业都有哪些种类?
- GTASA圣安地列斯如何打MOD2(简单教程)
- 陈天奇:机器学习科研的十年
- 云服务器常见的十个问题
- ftp服务器响应很慢,有果必有因:FTP传输速率慢和TCP窗口、网络时延的因果案例...
热门文章
- 交互系统的构建之(四)手掌与拳头检测加盟TLD
- L3-1 森森旅游 (30 分)
- 7-2 字符串逆序 (15 分)
- java程序初始化_Java程序初始化顺序
- idea部署tomcat并实现简单的web项目
- 阿里云自动java和mysql数据库_阿里云服务器之基于Linux系统部署上线JavaWeb项目和连接MySQL数据库(从购买云服务器到发布JavaWeb项目全套详细流程)...
- linux临时挂载别的文件目录_Linux目录结构及开机流程详解
- 贝叶斯方法(Bayesian approach) —— 一种概率解释(probabilistic interpretation)
- 如何把高版本的sqlserver 还原到低版本的 sqlserver
- Qt5.6.0+OpenGL 纹理贴图首战告捷