zoukankan      html  css  js  c++  java
  • 122345随意排列,找出满足条件的数

      题目要求:

                1.必须包含122345这六个数

                2.数字中的第三位(百位)不能为4

                3.输出6位数里所有符合以上两个条件的数

    代码如下:

        static String[] numberStrings = {"1","2","3","4","5"};
        
        public static void main(String[] args) {
            for(int i=122345;i<999999;i++){
                onetof(i+"");
            }
            
        }
        public static void onetof(final String number){
            for(String n:numberStrings){
                if(number.indexOf(n) <0)
                    return;
            }
            if(number.indexOf("4") ==3)
                return;
            if(number.lastIndexOf("2") ==number.indexOf("2"))
                return;
            if(number.indexOf("35")>0 || number.indexOf("53")> 0)
                return;
            
            System.out.println(number);
        }

          那么,问题来了,如果不是6位数,而是7位呢,或者其它多少位,所以需要改变一下:

    if(number.indexOf("4") == number.length()-3)
                return;

    这样就妥妥的了

    但是这种方法感觉效率不高,如果有想法,欢迎留言....

  • 相关阅读:
    GRUB引导——menu.lst的写法
    条形码类型及常见条形码介绍
    Tmux:终端复用器
    find+*的问题
    find命令之exec
    Linux core 文件介绍
    C语言中返回字符串函数的四种实现方法
    C语言中的volatile
    Stars
    Game with Pearls
  • 原文地址:https://www.cnblogs.com/ahhy/p/4389947.html
Copyright © 2011-2022 走看看