Thứ Hai, 18 tháng 4, 2016

[#9] Special Pythagorean triplet

A Pythagorean triplet is a set of three natural numbers, a < b < c, for which,
a2 + b2 = c2
For example, 32 + 42 = 9 + 16 = 25 = 52.
There exists exactly one Pythagorean triplet for which a + b + c = 1000.
Find the product abc.

def problem9(s = 1000):
        '''
        A Pythagorean triplet is a set of three natural numbers, a < b < c, for which,
        a2 + b2 = c2
        For example, 32 + 42 = 9 + 16 = 25 = 52.
        There exists exactly one Pythagorean triplet for which a + b + c = 1000.
        Find the product abc.
        '''
        #a = m**2 + n**2
        #b = 2 * m * n
        #c = m**2 - n**2
        for n in range(1, s + 1):
            for m in range(1, s + 1):
                if m**2 + m * n == s // 2:
                    return 2 * m * n * (m**4 - n**4)

ChiefdaThief

Author & Editor

Keep It Simple Stupid.

0 nhận xét:

Đăng nhận xét

Manual Categories