zoukankan      html  css  js  c++  java
  • 蓝桥杯 -- 取字母

    从键盘读入一个由字母构成的串(不大于30个字符)。
     
    从该串中取出3个不重复的字符,求所有的取法。
     
    取出的字符,要求按字母升序排列成一个串。
     
    不同的取法输出顺序可以不考虑。
     
    例如:
    输入:
    abc
    则输出:
    abc
     
    输入:
    abcd
    则输出:
    abc
    abd
    acd
    bcd
     
    输入:
    abcaa
    则输出:
    abc
     
    要求考生把所有类写在一个文件中。
    调试好后,存入与考生文件夹下对应题号的“解答.txt”中即可。
    相关的工程文件不要拷入。请不要使用package语句。
    另外,源程序中只能出现JDK1.5中允许的语法或调用。不能使用1.6或更高版本。
     
    解题思路: 先将相同的字母去重,然后跑一边三重循环将所有情况输出。
     1 #include <stdio.h>
     2 #include <string.h>
     3 #include <algorithm>
     4 
     5 using namespace std;
     6 
     7 int main ()
     8 {
     9     char s1[40],s2[40];
    10     int i,j,i1,i2,i3;
    11     while (gets(s1)!=NULL)
    12     {
    13         int len = strlen(s1);
    14         sort(s1,s1+len);      // 从小到大排序 
    15         s2[0] = s1[0]; j = 1;
    16         for (i = 1; i < len; i ++)   // 去掉相同的字母 
    17             if (s1[i] != s1[i-1])
    18                 s2[j ++] = s1[i];
    19         
    20         s2[j] = 0;
    21         for (i1 = 0; i1 < j-2; i1 ++)     // 三重循环 模拟取字母的过程 
    22          for (i2 = i1+1; i2 < j-1; i2 ++)
    23           for (i3 = i2+1; i3 < j; i3 ++)
    24                 printf("%c%c%c
    ",s2[i1],s2[i2],s2[i3]);
    25     }
    26     return 0;
    27 }
  • 相关阅读:
    使用kbmMW#1轻松实现REST
    kbmMW集成JWT
    kbmMW TkbmMWHashSHA256与Delphi 10.2 THashSHA2算出相同的结果
    REST easy with kbmMW #14 – DB Controlled login
    java的三种随机数生成方式
    Java中如何获取一个类中泛型的实际类型
    java格式化时间到毫秒
    Java Base64Utils ----Utils
    file 从InputStream读取byte[]示例
    Java四种引用类型
  • 原文地址:https://www.cnblogs.com/yoke/p/6682431.html
Copyright © 2011-2022 走看看