首页 > 学院 > 开发设计 > 正文

122345随意排列,找出满足条件的数

2019-11-14 23:37:22
字体:
来源:转载
供稿:网友
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;

这样就妥妥的了

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


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表