鱼C论坛

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

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

[复制链接]
发表于 2019-12-26 14:44:05 | 显示全部楼层
def f294(lst):
    lst.sort()
    res = 0
    for i in range(len(lst)-1):
        if lst[i+1] - lst[i] > res:
            res = lst[i+1] - lst[i] 
    return res
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-26 14:56:54 | 显示全部楼层
def fun(s):
    n = len(s)
    if n < 2: return 0
    s.sort()
    ##result = 
    return max(map(lambda x, y: x - y,s[1:],s[:-1]))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-26 15:12:06 | 显示全部楼层
阴阳神万物主 发表于 2019-12-26 14:18
步长还能大?但是呢,步子太大容易扯到蛋啊。

扯到蛋,后面步上
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-26 15:28:16 | 显示全部楼层
常规写法
def func294(lst):
    lst = list(set(lst))
    lst.sort()
    maxn = 0
    if len(lst) < 2:
        return maxn
    for i in range(1, len(lst)):
        if (t := (lst[i] - lst[i-1])) > maxn:
            maxn = t
    return maxn
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-26 21:49:09 | 显示全部楼层
楼主,我的程序你只是打了分,没有说耗时啊,我想看看比较比较
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-26 23:30:31 | 显示全部楼层
本帖最后由 sn8625 于 2019-12-27 09:06 编辑
import random

def fun():
        l = []
        for i in range(100):
                l.append(random.randint(1,999))
        print(l)

        l.sort(reverse=False)
        print(l)
        for i in range(len(l)):
                if i + 1 < len(l):
                        yield l[i + 1] - l[i]
                else:
                        yield 0

f = fun()
print(max(list(f)))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-27 09:46:33 | 显示全部楼层

def Fun294(L):
    Compare = 0
    if len(L)<2:
        return 0
    else:
        L.sort()
        for i in range(len(L)-1):
            if (L[i+1] - L[i] >Compare):
                Compare = L[i+1] - L[i]
        return Compare,(L[i],L[i+1])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-27 12:20:52 | 显示全部楼层
def f294(s):
    if len(s)>1:
        s.sort()
        re=0
        for i in range(len(s)-1):
            if s[i+1]-s[i]>re:
                re=s[i+1]-s[i]
        return re
    else:
        return 0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2020-1-3 21:36:01 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-7 17:21:55 | 显示全部楼层
def f294(L):
    if len(L)<2:
        return 0
    else:
        L1=[]
        L.sort()
        for i in range(len(L)-1):
            L1.append(L[i+1]-L[i])   
        return max(L1)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-24 16:14:26 | 显示全部楼层
def fun294(x):
    x = sorted(x)
    result = 0
    if len(x) < 2:
        return result
    for i in range(len(x)-1):
        if abs(x[i+1] - x[i]) > result:
            result = abs(x[i+1] - x[i])
    return result
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-18 13:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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