Python | Leetcode Python题解之第470题用Rand7()实现Rand10()

题目:

题解:

python 复制代码
class Solution:
    def rand10(self) -> int:
        while True:
            a = rand7()
            b = rand7()
            idx = (a - 1) * 7 + b
            if idx <= 40:
                return 1 + (idx - 1) % 10
            a = idx - 40
            b = rand7()
            # get uniform dist from 1 - 63
            idx = (a - 1) * 7 + b
            if idx <= 60:
                return 1 + (idx - 1) % 10
            a = idx - 60
            b = rand7()
            # get uniform dist from 1 - 21
            idx = (a - 1) * 7 + b
            if idx <= 20:
                return 1 + (idx - 1) % 10
相关推荐
qq74223498411 小时前
Python操作数据库之pyodbc
开发语言·数据库·python
墨染点香12 小时前
LeetCode 刷题【138. 随机链表的复制】
算法·leetcode·链表
2401_8414956412 小时前
【自然语言处理】轻量版生成式语言模型GPT
人工智能·python·gpt·深度学习·语言模型·自然语言处理·transformer
云和数据.ChenGuang12 小时前
tensorflow生成随机数和张量
人工智能·python·tensorflow
测试老哥13 小时前
python+requests+excel 接口测试
自动化测试·软件测试·python·测试工具·测试用例·excel·接口测试
AI纪元故事会13 小时前
冰泪与雨丝:一个AI的Python挽歌
开发语言·人工智能·python
ColderYY13 小时前
Python连接MySQL数据库
数据库·python·mysql
寒秋丶14 小时前
Milvus:数据库层操作详解(二)
数据库·人工智能·python·ai·ai编程·milvus·向量数据库
凯歌的博客14 小时前
python虚拟环境应用
linux·开发语言·python
西柚小萌新14 小时前
【深入浅出PyTorch】--8.1.PyTorch生态--torchvision
人工智能·pytorch·python