eg. 给一个正整数100, 求3个正整数之和等于100的组合数。

ps. 我也不知道结果对不对,lol

#/usr/bin/env python
# 遍历法
def test(n):
    rslt = []
    for i in range(1, n/3):
        for j in range(i, (n/2 - (i+1)/2 + 1)):
            k = n - i - j
            rslt.append([i, j, k])
    return rslt
#/usr/bin/env python
# 统计法
def test(n):
    m = 0
    for i in range(1, n/3):
        m += (n/2 - (i+1)/2 - i +1)
    return m

这里写图片描述

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐