滿足特定條件的a,b,c。for循環效率

import time

start_time = time.time()

# 注意是三重循環

for a in range(0, 1001):

for b in range(0, 1001):

for c in range(0, 1001):

if a**2 + b**2 == c**2 and a+b+c ==1000:

print("a, b, c: %d, %d, %d" % (a, b, c))

end_time = time.time()

print("elapsed: %f" % (end_time - start_time))

print("complete!")

運行結果:

a, b, c: 0, 500, 500

a, b, c: 200, 375, 425

a, b, c: 375, 200, 425

a, b, c: 500, 0, 500

elapsed: 214.583347

complete!


第二次嘗試

import time

start_time = time.time()

# 注意是兩重循環

for a in range(0, 1001):

for b in range(0, 1001-a):

c =1000 - a - b

if a**2 + b**2 == c**2:

print("a, b, c: %d, %d, %d" % (a, b, c))

end_time = time.time()

print("elapsed: %f" % (end_time - start_time))

print("complete!")

運行結果:

a, b, c:0, 500, 500

a, b, c:200, 375, 425

a, b, c:375, 200, 425

a, b, c:500, 0, 500

elapsed:0.182897

complete!

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容