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



  

相关话题

  有哪些经典的无解问题? 
  如何把微信群/QQ群构造成一个阿贝尔群? 
  Γ(x+1)在x=0处如何泰勒展开? 
  什么是高等数学? 
  为什么这个世界是混沌无序的,而人们发现的用于解释这个世界的原理却都是有序简洁而优美的? 
  想要学习流形的话需要哪些预备知识? 
  怎么推导或证明 e^x 的导数是自身? 
  数学草稿本需要很工整吗? 
  蜈蚣博弈(Centipede Game)在现实中都有哪些应用? 
  这张图的最后一条到底是什么? 

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





© 2024-12-22 - tinynew.org. All Rights Reserved.
© 2024-12-22 - tinynew.org. 保留所有权利