美文网首页
667. Beautiful Arrangement II

667. Beautiful Arrangement II

作者: xiaoyaook | 来源:发表于2017-11-03 22:01 被阅读0次

    要求n个不同的正整数,且相邻的数需要k个不同的差.
    那么设k=n-1
    我们先构造[1,2,...,n-k-1],这里有n-k-1个数,他们之间的差为1.
    ans = [i for i in range(1, n-k)]
    再构造[1,n,2,n-1,3,n-2,...]这里构造n-1个不同的差(k,k-1,...1)

    for d in range(k+1):
          if d%2 == 0:
               ans.append(n-k+d//2)
          else: 
               ans.append(n-d//2)
    

    这样就满足条件,数组有n个不同的正整数,且相邻的数需要k个不同的差

    相关文章

      网友评论

          本文标题:667. Beautiful Arrangement II

          本文链接:https://www.haomeiwen.com/subject/qpwapxtx.html