3桁を繰り返しません

3桁を繰り返しません

問題の説明

0-9 10デジタル3桁の数字は、組成物を繰り返すことはできませんか?

アルゴリズムの考え方

  1. 、Bを用いて、それぞれの反復に続いて、百、10、ビットを表し、cは
  2. 以下のように「早期に判断する」ことに注意してくださいif a ==b: continue2つのサイクルを決定するために行うことができるとき

サンプルコード

パイソン

# a: 1-9
# b: 0-9
# c: 0-9

l = range(10)  # 产生一个用于遍历的列表
count = 0

for a in l[1:]:  # 这是使用列表切片
    for b in l:
        if a == b: continue
        for c in l:
            if c != a and c != b:  # 每个循环就可以过滤了,不要最后在一起过滤
                count += 1  # python没有就++, 就是 cnt+=1
                print(a, b, c)

print('count: %s' % (count))

ジャワ


public class 不重复的3位数 {

    public static void main(String[] args) {
        // a: 1-9
        // b: 0-9
        // c: 0-9

        int count = 0;

        for (int a = 1; a < 10; a++) {
            for (int b = 0; b < 10; b++) {
                if (a == b)
                    continue;
                for (int c = 0; c < 10; c++) {
                    if (c != a && c != b){
                        count++;
                        System.out.printf("%d%d%d  \n", a, b, c);
                    }
                }
            }
        }
        System.out.printf("count: %d \n",count);

    }
}

おすすめ

転載: www.cnblogs.com/Rowry/p/11789892.html