跟着专注于计算机视觉的AndyJ的妈妈我学算法之每日一题leetcode470用 Rand7() 实现 Rand10()

原来是原题啊:

470. 用 Rand7() 实现 Rand10()
已有方法 rand7 可生成 1 到 7 范围内的均匀随机整数,试写一个方法 rand10 生成 1 到 10 范围内的均匀随机整数。

不要使用系统的 Math.random() 方法。

code

class Solution:
    def rand10(self):
        """
        :rtype: int
        """
        temp = 41
        while temp >= 40:
            temp = (rand7()-1)*7+(rand7()-1) # rand63  1-63
        return temp // 4 + 1

好了。

猜你喜欢

转载自blog.csdn.net/mianjiong2855/article/details/107763105
今日推荐