設計一個隨機算法,將一個整數M分成N份 要求每份在區間【minV, maxV】之間

設計一個隨機算法,將一個整數M分成N份 要求每份在區間【minV, maxV】之間

輸入:M, N, minV, maxV

輸出: N個隨機整數

import random
def randomSplit(M, N, minV, maxV):
    res = []
    while N > 0:
        l = max(minV, M - (N-1)*maxV)
        r = min(maxV, M - (N-1)*minV)
        num = random.randint(l, r)
        N -= 1
        M -= num
        res.append(num)
    print(res)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章