火车远方


私信TA

用户名:huocheYF

访问量:16978

签 名:

许三多说,为有意义的事情而活着。

等  级
排  名 689
经  验 3948
参赛次数 2
文章发表 41
年  龄 21
在职情况 学生
学  校 渤海大学
专  业 CS

  自我简介:

 

0.0分

3 人评分

  评论区

n = int(input())
count = 0
li = list(map(int,input().split()))
while True:
    li_r = list(map(lambda x:x//2,li))
    li = li_r.copy()
    a = li_r.pop(0)
    li_r.append(a)
    li = list(map(lambda x,y:x+y,li,li_r))

    for i in range(len(li)):
            if li[i] % 2 != 0:
                li[i] += 1
                count += 1
    if len(set(li)) == 1:
        break

print(count)
大佬应该依旧找出最优解了吧?
小弟从今天起就开始刷题了   因为只有一些Python的 基础对算法一窍不通 所以在此借用大佬的题解 我想这样能让我更快提升
这是我做的  乱写的 但是不知道效率咋样
Python跑一遍,最优结果是超时,评分80%,运算量大的情况下时间很久,代码如下,求大佬优化!
您说的这句话的评分是什么意思 我提交了但是没有显示评分呀!
2020-03-10 17:44:58
能够优化的大佬,请回复或者直接发帖,膜拜!
2020-01-17 23:46:58
  • «
  • 1
  • »