堕落之翼 发表于 2018-6-12 09:32:38

{:5_91:}

victor.xu 发表于 2018-6-15 10:12:38

学习一下

puddingYevtee 发表于 2018-6-15 10:58:50

list1 =
list1.sort()
count = 0
num = -1
num1 = 0
result = 1
list2= []
while True:
    if count <= (len(list1)-1)/2:
      list2.append(list1+list1)
      num -=1
      count+=1
    else:
      break
for each in range(len(list2)):
    if num1 < len(list2):
      result = result * list2
print(result)
   

所向故往 发表于 2018-6-15 14:48:31

好题~~。

刘文华 发表于 2018-6-15 18:17:15

ok

无名小白xyz 发表于 2018-6-30 17:51:41

了解

小小小琳儿 发表于 2018-7-1 18:14:17

来学校

zhengsc 发表于 2018-7-2 20:43:58

看看

sdtfll 发表于 2018-7-2 23:01:31

kkkkkkkkkkkkk

zanglanju 发表于 2018-7-4 12:39:03

{:5_90:}

duliping 发表于 2018-7-4 15:52:20

x =
x.sort()

a = x[:int(len(x)/2)]
b = x
b.reverse()

result = 1
for each in zip(a, b):
    result *= sum(list(each))

print(result)

指头比思想慢 发表于 2018-7-14 18:21:14

本帖最后由 指头比思想慢 于 2018-7-14 18:27 编辑

这应该是旅行商问题吧,数字给多了容易挂掉{:5_91:}

def my_max(x):
    biger = 0
    if len(x) == 2:
      return x + x
    elif len(x) == 1:
      return x
    else:
      for i in x:
            y = x.copy()
            y.remove(i)
            for p in y:
                num_add = i + p
                z = y.copy()
                z.remove(p)
                t = num_add * my_max(z)
                if t > biger:
                  biger = t
      return biger
   
x =
print(my_max(x))

solomonxian 发表于 2018-7-19 23:51:05

这题直觉就是乘数越接近乘积越大,像矩形周长一定时求面积最大的问题

但是,如果不严格证明的话,正确性是通不过的吧,枚举又太恐怖了{:10_312:}
def fun(lst):
    new_lst = sorted(lst)
    result = 1
    for i in range(len(lst)//2):
      result *= (new_lst + new_lst[-i-1])
    return result

希望楼主的答案有证明过程

小陨aoq 发表于 2020-8-13 14:54:14

求出所有符合条件的组合再取最大值
def fun(nums):
    from itertools import combinations
    all_comb = , 4)
                if sorted() == sorted(nums)]
    result = )) for each in all_comb]
    return max(result), all_comb

19971023 发表于 2020-11-15 10:57:02

1
页: 1 2 [3]
查看完整版本: Python:每日一题 180