zoukankan      html  css  js  c++  java
  • 1750:全排列

    1750:全排列

    总时间限制: 
    1000ms
     
    内存限制: 
    65536kB
    描述

    给定一个由不同的小写字母组成的字符串,输出这个字符串的所有全排列。 我们假设对于小写字母有'a' < 'b' < ... < 'y' < 'z',而且给定的字符串中的字母已经按照从小到大的顺序排列。

    输入
    输入只有一行,是一个由不同的小写字母组成的字符串,已知字符串的长度在1到6之间。
    输出
    输出这个字符串的所有排列方式,每行一个排列。要求字母序比较小的排列在前面。字母序如下定义:

    已知S = s1s2...sk , T = t1t2...tk,则S < T 等价于,存在p (1 <= p <= k),使得
    s1 = t1, s2 = t2, ..., sp - 1 = tp - 1, sp < tp成立。
    样例输入
    abc
    样例输出
    abc
    acb
    bac
    bca
    cab
    cba
     1 #include<cstdio>
     2 #include<cstring>
     3 #include<iostream>
     4 #include<algorithm>
     5 using namespace std;
     6 char a[1001];
     7 int bc[1001];//储存所有的元素,方便sort排序 
     8 int vis[1001];
     9 char ans[1001];
    10 int dfs(int now)
    11 {
    12     for(int i=0;i<strlen(a);i++)
    13     {
    14         if(vis[i]==0)
    15         {
    16             vis[i]=1;
    17             ans[now]=a[i];
    18             if(now==strlen(a)-1)
    19             puts(ans);
    20             else
    21             dfs(now+1);    
    22             vis[i]=0;
    23             ans[now]=0;
    24         }
    25         
    26     }
    27 } 
    28 int main()
    29 {
    30     gets(a);
    31     dfs(0);
    32     return 0; 
    33 }
  • 相关阅读:
    20210110-正则表达式
    20210105
    C# Expression 树转化为SQL语句(一)
    5000行js db
    Keras智能
    nginx 设置多个tcp IP代理 socket 转发
    FTP连接时出现“227 Entering Passive Mode” 的解决方法
    windows nginx TCP代理 负载均衡
    nginx 代理ftp
    Intellij IDEA添加项目依赖
  • 原文地址:https://www.cnblogs.com/zwfymqz/p/6527420.html
Copyright © 2011-2022 走看看