如何编写一个接受数字并返回三联列表的函数“三联”?

时间:2019-05-10 14:02:19

标签: python list triplet

编写一个函数triplet,该函数以数字n作为参数并返回一个triplet列表,以使三元组的前两个元素的和等于使用小于n的数字的第三个元素。请注意,(a,b,c)和(b,a,c)代表相同的三元组。

三胞胎(5)

[(1、2、3),(1、2、3),(1、3、4),(2、2、4)]

2 个答案:

答案 0 :(得分:1)

您可以试试吗?

def write_triplets(n):
    to_return = []

    if n >= 2:
        for i in range(2, n):
            for j in range(1, i/2+1):
                triplet = (j, i-j, i)
                to_return.append(triplet)

    return to_return


write_triplets(5) 

输出:

# Result: [(1, 1, 2), (1, 2, 3), (1, 3, 4), (2, 2, 4)] # 

答案 1 :(得分:0)

您可以通过列表理解来做到这一点:

    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk</artifactId>
        <version>1.7.4</version>
       <exclusions>
            <exclusion>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
            </exclusion>
            <exclusion>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
            </exclusion>
        </exclusions>
    </dependency>