1-9 的数字,每个数字只能出现一次组成9位整数,其中第1位能被1整除 前 2 位能被 2 整除 前 3 位能被 3 整除 依次类推......... 前 9 位能被 9 整除

public static void main(String[] args) {
        long start = 123456789;
        long end = 987654321;
        for (long i=start;i<=end;i++) {
            for(int j=1;j<=9;j++) {
                String str = i + "";
                String s = str.replaceAll(str.substring(j-1,j),"");
                String si = str.substring(0,j);
                if (str.indexOf("0") == -1 && str.length() - s.length() == 1){
                    int in = Integer.parseInt(si);
                    if (in % j == 0) {
                        if (j == 9) {
                            System.out.println(i);
                            break;
                        } else {
                            continue;
                        }
                    } else {
                        break;
                    }
                } else {
                    break;
                }
            }
        }
    }

你可能感兴趣的:(无聊自己做个demo吧,java算法)