Minimum Loss

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zjucor/article/details/82754970

Java有TreeSet秒解,Python没有,但是可以sort,然后最小值一定出现在连续的2个index之间

因为如果间隔超过1是合理的pair,那么间隔为1的也一定是合理的pair

# Complete the minimumLoss function below.
def minimumLoss(a):
    d={v:i for i,v in enumerate(a)}
    a.sort()
    b=[a[i]-a[i-1] for i in range(1,len(a)) if d[a[i]]<d[a[i-1]]]
    return min(b)

if __name__ == '__main__':
    n = int(input())
    price = list(map(int, input().rstrip().split()))
    result = minimumLoss(price)
    print(result)

猜你喜欢

转载自blog.csdn.net/zjucor/article/details/82754970