Project Euler 9

'''
Created on 2014年9月1日
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.
@author: wxp2971
'''
# 最直接的方式,大概分析下范围
for a in range(1,900):
    for b in range(a+1,900):
        for c in range(b+1,900):
            if ((a+b+c)==1000) and (a*a+b*b)==(c*c):
                print(a,b,c)
                print(a*b*c)
                 
# 答案中的解答
# 直接的方式
s = 1000
for a in range(3,s-3):
    for b in range(a+1,int((s-1-a)/2)):
        flag = 0
        c = s - a -b
        if (a*a + b*b) == (c*c):
            print(a,b,c)
            print(a*b*c)
            flag = 1
            break
    if flag:
        break

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值