zoukankan      html  css  js  c++  java
  • Euler's Sum of Powers Conjecture

    转帖:Euler's Sum of Powers Conjecture

    存不存在四个大于1的整数的五次幂恰好是另一个整数的五次幂?

    暴搜:O(n^4)

    用dictionary:O(n^3)

     1 import itertools
     2 
     3 def euler(m):
     4     """Yield tuples (a, b, c, d, e) such that a^5 + b^5 + c^5 + d^5 = e^5,
     5     where all are integers, and 1 < a ≤ b ≤ c ≤ d < e < m."""
     6     powers = [e**5 for e in range(2, m)] 
     7     pairs  = {sum(pair): pair 
     8               for pair in itertools.combinations_with_replacement(powers, 2)}
     9     for pair1 in pairs:
    10         for e5 in powers:
    11             pair2 = e5 - pair1
    12             if pair2 in pairs:
    13                 yield fifthroots(pairs[pair1] + pairs[pair2] + (e5,))
    14     
    15 def fifthroots(nums): 
    16     "Sorted integer fifth roots of a collection of numbers." 
    17     return tuple(sorted(int(round(x ** (1/5))) for x in nums))
  • 相关阅读:
    UVA
    codeforces #371div2 B
    POJ-3278 Catch That Cow
    巴士博弈
    权势二进制
    HDU
    SQL 函数
    SQL 查询语句×45
    SQL 触发器
    SQL 连接查询
  • 原文地址:https://www.cnblogs.com/niuxichuan/p/10044640.html
Copyright © 2011-2022 走看看