百科问答小站 logo
百科问答小站 font logo



有没有数学大神,求救? 第1页

  

user avatar   forward-star 网友的相关建议: 
      

可以考虑 直接枚举,当然我们可以枚举四个数字中最少的两个数,然后对另两个数做two pointer,时间复杂度为 .

不过试了一下两种方法都是无解:

       a = [675.96,459.88,827.28,565.24,584.55,803.15,681.35,800.28,827.28,946.84,966.44,80.00,420.58,827.28,716.28] n = len(a) a.sort() print(a) for i in range(n - 1):     for j in range(i + 1,n):         k = j + 1         t = n - 1         while (k < t):             s = a[k] + a[t] + a[i] + a[j]             if s == 2697.41:                 print(a[k],a[t])             elif s > 2697.41:                 t -= 1             else:                 k += 1 for i in range(n):     for j in range(i + 1,n):         for k in range(j + 1,n):             for t in range(k + 1,n):                 if a[i] + a[j] + a[k] + a[t] == 2697.41:                     print(a[i],a[j],a[k],a[t])     



  

相关话题

  如何求出图中数列的通项公式? 
  数学中,有哪些方程和思想让你体会到了美感? 
  那些数学很好的人现在怎么样了? 
  社会科学可以被形式化公理化吗? 
  克劳德·香农算不算正统的数学家? 
  线性代数从矩阵和行列式入门真的是最恰当的学习方法吗? 
  有没有在高考数学中使用洛必达法则而不扣分的方法? 
  如何看待靠指责别人来发泄自己的喷子? 
  为什么笛卡尔之前没有人想到平面直角坐标系? 
  你认为数学的基本思想方法是什么? 

前一个讨论
丁同仁常微分方程第二版2.2第五题怎么解?
下一个讨论
如何评价知乎用户Bazinga?





© 2024-05-17 - tinynew.org. All Rights Reserved.
© 2024-05-17 - tinynew.org. 保留所有权利