鱼C论坛

 找回密码
 立即注册
123
返回列表 发新帖
楼主: zltzlt

[已解决]Python:每日一题 278

[复制链接]
 楼主| 发表于 2019-11-21 19:20:38 | 显示全部楼层
华一仙 发表于 2019-11-21 11:18
代码撞了,我换个写法

恭喜通过!

执行用时:40 ms
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-21 19:21:33 | 显示全部楼层

解答错误

输入:[1, 2, 13, 5, 4, 3, 4, 5, 6]
输出:3
预期结果:9
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-21 19:22:02 | 显示全部楼层

恭喜通过!

执行用时:50 ms
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-21 19:22:33 | 显示全部楼层

恭喜通过!

执行用时:136 ms
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-21 19:22:53 | 显示全部楼层

恭喜通过!

执行用时:119 ms
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-21 19:51:00 | 显示全部楼层
本帖最后由 Poiink 于 2019-11-22 19:32 编辑
def func278(*li):
    li = list(li)
    sumsum = sum(li)
    for i in range(len(li)):
        if li[i] == 13:
            if i + 5 < len(li):
                sumsum -= sum(li[i:i+6])
            else:
                sumsum -= sum(li[i:])
        else:
            continue
    return sumsum


修改:
def func278(*li):
    li = list(li)
    sumsum = sum(li)
    i = 0
    while i < len(li):
        if li[i] == 13:
            if i + 5 < len(li):
                sumsum -= sum(li[i:i+6])
                i += 6
                
            else:
                sumsum -= sum(li[i:])
                break
        else:
            i += 1
    return sumsum
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-21 19:54:08 | 显示全部楼层

自己测试了一下发现有问题。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-21 21:10:23 | 显示全部楼层
zltzlt 发表于 2019-11-21 19:11
第一个要快

执行用时:109 ms

诶~是这样吗。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-22 08:40:32 | 显示全部楼层
本帖最后由 zm_selina 于 2019-11-22 08:43 编辑

#写得比较烂,也来凑个热闹

def sum_list(list1):
    sum1 = 0  # 存放13以及13后面5个数的和
    for i in range(len(list1)):
        if list1[i] == 13:
            sum1 = sum1 + sum(list1[i:i+6])
    sum2 = sum(list1)
    return sum2 - sum1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-22 08:45:25 | 显示全部楼层
def sum_list(list1):
    sum1 = 0  # 存放13以及13后面5个数的和
    for i in range(len(list1)):
        if list1[i] == 13:
            sum1 = sum1 + sum(list1[i:i+6])
    sum2 = sum(list1)
    return sum2 - sum1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-22 09:30:02 | 显示全部楼层
zltzlt 发表于 2019-11-21 19:21
解答错误

输入:[1, 2, 13, 5, 4, 3, 4, 5, 6]

忧伤,题都看错了。。重新写了一段
def numSum(list1) :
        if 13 not in list1 :
                return sum(list1)
        else :
                list2 = list1[: list1.index(13)]
                list3 = list1[list1.index(13) + 6:]
                if list1.index(13) == 0 :
                        return 0
                else :
                        return sum(list2 + list3)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-25 09:37:29 From FishC Mobile | 显示全部楼层
ll
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-11-26 11:18:55 | 显示全部楼层
本帖最后由 eachill 于 2019-11-26 15:10 编辑
def f278(nums:List[int]) -> int:
    count = 0
    result = 0
    for i in range(len(nums)):
        if nums[i] == 13:
            count = 5
            continue
        if count > 0:
            count -= 1
            continue
        else:
            result += nums[i] 
    return result
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-18 00:13:12 | 显示全部楼层
def solve(s):
    sum = 0
    while len(s) > 0:
        if s[0] != 13:
            sum += s[0]
            del s[0]
        else:
            len1 = 5
            del s[0]
            while len1 > 0 and len(s) > 0:
                if s[0] != 13:
                    del s[0]
                    len1 -= 1
                else:
                    len1 = 5
                    del s[0]
    return sum

if __name__ == '__main__':
    print('自测1:',solve([1,2,2]))
    print('自测2:',solve([1,2,13,5,4,3,4,5,6]))
    print('自测3:',solve([5,13,7]))
    print('自测4:',solve([0,0,0,0]))
    print('自测5:',solve([13,1,2,3,4,5,13,9,7]))
    print('自测6:',solve([1,2,3,13,5,6,13,9,8]))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 13:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表