最新消息:380元/半年,推荐全网最具性价比的一站式编程学习平台码丁实验室

信息学奥赛题库- 全排列

C++ 少儿编程 1070浏览 0评论

友情提示:380元/半年,儿童学编程,就上码丁实验室

【题目描述】

给定一个由不同的小写字母组成的字符串,输出这个字符串的所有全排列。

我们假设对于小写字母有‘a’ <‘b’ < … <‘y’<‘z’,而且给定的字符串中的字母已经按照从小到大的顺序排列。

【输入】

只有一行,是一个由不同的小写字母组成的字符串,已知字符串的长度在1到6之间。

【输出】

输出这个字符串的所有排列方式,每行一个排列。要求字母序比较小的排列在前面。字母序如下定义:

已知$S = s_1s_2…s_k,T = t_1t_2…t_k$,则S<T等价于,存在p(1≤p≤k),使得$s_1=t_1,s_2=t_2,…,s_{p-1}=t_{p-1}, s_p<t_p$成立。

【输入样例】

abc

【输出样例】

abc
acb
bac
bca
cab
cba

【提示】

本题目禁止使用STL及包含可以使用的相关调用。

您必须 登录 才能发表评论!