3桁を繰り返しません
問題の説明
0-9 10デジタル3桁の数字は、組成物を繰り返すことはできませんか?
アルゴリズムの考え方
- 、Bを用いて、それぞれの反復に続いて、百、10、ビットを表し、cは
- 以下のように「早期に判断する」ことに注意してください
if a ==b: continue
2つのサイクルを決定するために行うことができるとき
サンプルコード
パイソン
# 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);
}
}