51nod 1384 全排列
来源:互联网 发布:知彼而知己是什么意思 编辑:程序博客网 时间:2024/05/14 09:32
题目描述:
给出一个字符串S(可能又重复的字符),按照字典序从小到大,输出S包括的字符组成的所有排列。例如:S = "1312",
输出为:
1123
1132
1213
1231
1312
1321
2113
2131
2311
3112
3121
3211
Input
输入一个字符串S(S的长度 <= 9,且只包括0 - 9的阿拉伯数字)
Output
输出S所包含的字符组成的所有排列
Input示例
1312
Output示例
112311321213123113121321211321312311311231213211
解题思路:
常规的全排列问题,只需要注意去掉重复的即可,可以利用next_permutation函数偷懒:
#include <iostream>#include <string>#include <algorithm>using namespace std;int main(){ string str; cin >> str; sort(str.begin(), str.end()); string pre = ""; do{ if(str.compare(pre) == 0){ continue; } else{ cout << str << endl; } }while(next_permutation(str.begin(), str.end())); return 0;}
其中,next_permutation的实现可以参考leetcode上的一道题目的解析,时间复杂度为O(n),而对于这道题来说,还有个排序,所以时间复杂度为O(nlogn)。
1 0
- 1384全排列【51NOD】
- 51NOD 1384 全排列
- 51nod 1384 全排列
- 51Nod--1384全排列
- 51NOD 1384 全排列
- 51nod 1384 全排列
- 51nod 1384全排列
- 51nod 1384 全排列
- 51nod 1384 全排列
- 51Nod 1384 全排列
- 51nod 1384 全排列
- 51nod 1384 全排列
- 【51Nod】1384 全排列
- 51nod 1384 全排列
- 【51Nod】1384 全排列
- 51nod 1384 全排列
- 51nod 全排列
- 51nod 1384 全排列 (dfs)
- HEX2BIN文件简析:
- Github上如何给别人贡献代码(转)
- 北京天宇联科技有限责任公司—创新型智慧园区
- 省略号的多行和单行的省略号显示。。。。。
- 解决pom文件依赖冲突、版本错误的问题
- 51nod 1384 全排列
- 方法定义及格式
- 常用socket函数详解
- Description Resource Path Location Type Unparsed aapt error(s)! Check the Check the console for outp
- 企业用车管理系统流程图
- eclipse导入IntelliJ IDEA的maven项目
- cocos2d-x 2.2.2版本环境搭建(转)
- 制作一个漂亮的 vim 状态栏
- CSDN-markdown编辑器语法——字体、字号与颜色