排列组合问题~有重复元素的排列问题(perm)——【S神】苏嘉亿
Description
设 R=R=R={r1,r2,…,rnr_1,r_2,…,r_nr1,r2,…,rn} 是要进行排列的 nnn 个元素。其中元素 r1,r2,…,rnr_1,r_2,…,r_nr1,r2,…,rn 是小写字母,且可能相同。试设计一个算法, 列出 RRR 的所有不同排列。给定 nnn 以及待排列的 nnn 个元素。计算出这 nnn 个元素的所有不同排列。
Input
输入第 111 行是元素个数 n(1≤n≤500)n(1≤n≤500)n(1≤n≤500) 。接下来的 111 行是待排列的 nnn 个元素。
Output
按字典序输出 nnn 个元素的所有排列,最后 1 行中的数是排列总数。
Sample Input 1
4
aacc
Sample Output 1
aacc
acac
acca
caac
caca
ccaa
6
代码:
#include<bits/stdc++.h>
using namespace std;int a['z'+1];
char ans[510];
int n,tot;void dfs(int t){if(t>n){for(int i=1;i<=n;i++){cout<<ans[i];}cout<<endl;tot++;return;}for(char i='a';i<='z';i++){if(a[i]>0){ans[t]=i;a[i]--;dfs(t+1);a[i]++;}}
}int main(){string s;cin>>n>>s;for(int i=0;i<s.size();i++){a[s[i]]++;}dfs(1);cout<<tot; return 0;
}
排列组合问题~有重复元素的排列问题(perm)——【S神】苏嘉亿相关推荐
- 【组合数学】排列组合 ( 多重集组合数 | 所有元素重复度大于组合数 | 多重集组合数 推导 1 分割线推导 | 多重集组合数 推导 2 不定方程非负整数解个数推导 )
文章目录 一.多重集组合 ( 所有元素重复度大于组合数 ) 二.多重集组合 所有元素重复度大于组合数 推导 1 ( 分割线推导 ) 二.多重集组合 所有元素重复度大于组合数 推导 2 ( 不定方程非负 ...
- 有重复元素的排列问题
题目:有重复元素的排列问题 前言 题目要求 问题描述: 算法设计要求: 数据输入: 结果输出: 分析 源代码 输入输出示例 总结 前言 这是王晓东所著的<计算机算法设计与分析>(第四版)第 ...
- LintCode 16. 带重复元素的排列
写在前面:这题和全排列不含重复元素的那题几乎一样,我比较垃圾,就用HashSet去掉了重复的元素但是看了九章算法的答案也没看懂,他写的很有感觉. 用了hash,本来想着怎么写hashcode()和eq ...
- java 穷举 排列组合,JavaScript递归穷举所有排列组合并找出重复值
null export default { data() { return { resultArr:[] } }, mounted(){ this.sss('aaba','abac'); this.s ...
- 【组合数学】排列组合 ( 排列组合内容概要 | 选取问题 | 集合排列 | 集合组合 )
文章目录 一.排列组合内容概要 二.选取问题 三.集合排列 四.环排列 五.集合组合 参考博客 : [组合数学]基本计数原则 ( 加法原则 | 乘法原则 ) [组合数学]集合的排列组合问题示例 ( 排 ...
- php排列组合1004无标题,PHP的排列组合有关问题
PHP的排列组合有关问题PHP的排列组合问题 现有数组$arr = array('Area','Income','Age','Gender'); 想根据以上数组里的元素,组成新的数组如下: AreaG ...
- python多个列表排列组合_多个列表的排列组合(笛卡儿积) | 迭代实现
在西电开源社区逛论坛时候,发现下面的排列组合问题有一个高效的迭代方式实现. 如何从 ['ABC', '12'] 得到 A1 A2 B1 B2 C1 C2 然后推广到 ['abcd', '98h40ui ...
- python 排列组合速度_Python实现的简单排列组合算法示例
本文实例讲述了Python实现的简单排列组合算法.分享给大家供大家参考,具体如下: 1.python语言简单.方便,其内部可以快速实现排列组合算法,下面做简单介绍 2.一个列表数据任意组合 主要是利用 ...
- 有重复元素的排列问题pascal题解
var l,i,tj:longint; a:array['a'..'z']of longint; x,c:char; b:array[0..500]of char; procedure print; ...
最新文章
- python登录并关注公众号_python微信公众号之关注公众号自动回复
- 【翻译】Emmet(Zen Coding)官方文档 之七 一览表
- 华为云devops认证考试课堂笔记2
- java串口监控数据,怎样监听或者拦截串口上的数据
- 可能是史上最全的权限系统设计
- 【数据集】计算机视觉,深度学习,数据挖掘数据集整理
- 针孔相机的标定原理与实现
- android studio Emulator is outdated
- STM32——DAC数模转换实验
- 孪生素数对php编写,孪生素数
- 流量负载_指挥流量:揭开互联网规模负载平衡的神秘面纱
- TDK是什么意思,TDK怎么写?怎么利于SEO优化?
- 牛客网之黑暗的字符串
- 浙江大学远程教育计算机应用基础第4次,浙江大学远程教育计算机应用基础2013年秋-4.Excel知识题...
- 3D引擎优化方法整理
- Hystrix断路器执行原理
- 在C语言中,int型数据的取值范围?
- 怎么在Arcgis中提取多个坐标点的dem值(高程)
- TMA3.0.2.5铁塔制造助手+屏幕录像专家
- Markdown笔记利器:Typora主题-最美的模板
热门文章
- 在Oracle中添加的中文变成靠靠靠...
- 开关电源之光耦隔离反馈
- HDU 6230 (ManacherBIT)
- 传感器与传感器网络知识小问答
- 查看端口号的命令,android SDK启动模拟器的方法
- vue 统计中英文字符串长度_Ant Design Vue 添加区分中英文的长度校验功能
- PCI-SIG 文档 Ncb和cb的区别
- 两物体的相对速度公式_(1)相对论速度变换公式:(式中v为高速火车相对地的速度.u′为车上的人相对于车的速度.u为车上的人相对地面的速度)....
- Struts 2 FilterDispatcher和StrutsPrepareAndExecuteFilter之间的区别?
- 打印机不打印故障检查步骤