[从头学数学] 第55节 数学广角──搭配(二)

剧情提要:
[机器小伟]在[工程师阿伟]的陪同下进入练气期第六层功法的修炼,
这次要修炼的目标是[数学广角──搭配(二)]。

正剧开始:

星历2016年01月21日 15:03:02, 银河系厄尔斯星球中华帝国江南行省。
[工程师阿伟]正在和[机器小伟]一起研究[搭配(二)]。



<span style="font-size:18px;">>>> 
符合要求的两位数有:[10, 13, 15, 30, 31, 35, 50, 51, 53], 一共有9个。

def tmp():
    a = [0, 1, 3, 5];
    setA = set([]);
    for i in range(len(a)):
        for j in range(len(a)):
            if i == j:
                continue;
            
            num = 10 * a[i] + a[j];
            if (num > 9):
                setA.add(num);
    listA = list(setA);
    listA.sort();
    print('符合要求的两位数有:{0}, 一共有{1}个。'.format(listA, len(listA)));</span>



<span style="font-size:18px;">符合要求的两位数有:[20, 24, 26, 40, 42, 46, 60, 62, 64], 一共有9个。

def tmp():
    a = [0, 2, 4, 6];
    setA = set([]);
    for i in range(len(a)):
        for j in range(len(a)):
            if i == j:
                continue;
            
            num = 10 * a[i] + a[j];
            if (num > 9):
                setA.add(num);
    listA = list(setA);
    listA.sort();
    print('符合要求的两位数有:{0}, 一共有{1}个。'.format(listA, len(listA)));</span>


<span style="font-size:18px;">>>> 
1 -- 1 -- 3
1 -- 2 -- 2
1 -- 3 -- 1
2 -- 1 -- 2
2 -- 2 -- 1
3 -- 1 -- 1
一共有6种分法。

def tmp():
    a = [1, 2, 3, 4, 5];
    count = 0;

    for i in range(1, 6):
        for j in range(1, 6):
            for k in range(1, 6):
                if i + j + k == 5:
                    count += 1;
                    print('{0} -- {1} -- {2}'.format(i, j, k));
    print('一共有{0}种分法。'.format(count));</span>



<span style="font-size:18px;">>>> 
符合要求的两位数有:[25, 27, 29, 57, 59, 75, 79, 95, 97], 一共有9个。

def tmp():
    a = [2,5,7,9];
    setA = set([]);
    for i in range(len(a)):
        for j in range(len(a)):
            if i == j or a[j] % 2 == 0:
                continue;
            
            num = 10 * a[i] + a[j];
            if (num > 9):
                setA.add(num);
    listA = list(setA);
    listA.sort();
    print('符合要求的两位数有:{0}, 一共有{1}个。'.format(listA, len(listA)));</span>



<span style="font-size:18px;">>>> 
符合要求的数有[100, 111, 122, 133, 144, 155, 166, 177, 188, 199, 200, 211, 222, 233, 244, 255, 266, 277, 288, 299, 300], 共有21个。

def tmp():
    setA = set([]);
    
    for i in range(100, 301):
        bit = i % 10;
        tenBit = i//10%10;

        if bit == tenBit:
            setA.add(i);

    listA = list(setA);
    listA.sort();

    print('符合要求的数有{0}, 共有{1}个。'.format(listA, len(listA)));
	</span>


本节到此结束,欲知后事如何,请看下回分解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值