百科问答小站 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])     



  

相关话题

  看看题目?那个才是对的,为什么? 
  怎样理解“范畴”? 
  为什么2016年的高考全国数学卷这么难? 
  牛顿在数学方面有多牛? 
  拓扑学(点集拓扑和代数拓扑基础)和范畴论有什么双语教材? 
  如何证明 π>3.14? 
  一个数学学霸是怎样练成的? 
  关于微积分,牛顿和莱布尼茨的工作各有什么缺陷? 
  为什么做数学题时,自己想不出来,而翻到后面看答案解析时却全都能能看懂? 
  数学分析中,关于某个变量一致是什么意思? 

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





© 2025-04-16 - tinynew.org. All Rights Reserved.
© 2025-04-16 - tinynew.org. 保留所有权利