9-5每日一题:Leetcode470. 用 Rand7() 实现 Rand10()

本文介绍如何利用已有的 rand7() 函数,通过巧妙的数学运算,实现生成介于1到10之间的伪随机数。通过实例代码展示了如何通过两次调用 rand7() 并进行适当调整来达到目标,适合学习随机数生成和算法应用。

Leetcode470. 用 Rand7() 实现 Rand10()

// The rand7() API is already defined for you.
// int rand7();
// @return a random integer in the range 1 to 7

class Solution {
public:
    int rand10() {
        int t = (rand7() - 1) * 7 + rand7();
        if (t > 40) return rand10();
        return (t - 1) % 10 + 1;
    }
};
<!DOCTYPE html> <html lang="zh-CN" dir="ltr"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>个性化起始页</title> <style> * { margin: 0; padding: 0; border: 0; box-sizing: border-box; font-family: &#39;Segoe UI&#39;, &#39;Microsoft YaHei&#39;, sans-serif; } body { background: linear-gradient(135deg, #1a1a2e, #16213e); min-height: 100vh; display: flex; justify-content: center; align-items: center; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; padding: 20px; } .container { width: 100%; max-width: 1200px; display: flex; flex-direction: column; align-items: center; } .logo { margin-bottom: 40px; text-align: center; } .logo h1 { font-size: 3rem; background: linear-gradient(45deg, #64b3f4, #00c9ff); -webkit-background-clip: text; background-clip: text; color: transparent; margin-bottom: 10px; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); } .logo p { color: #a0d0ff; font-size: 1.2rem; opacity: 0.8; } .search-container { width: 100%; max-width: 700px; margin-bottom: 30px; position: relative; } #searchForm { position: relative; width: 100%; } #searchInput { width: 100%; height: 60px; padding: 0 70px 0 30px; border-radius: 40px; background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); color: white; font-size: 1.1rem; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); transition: all 0.3s ease; outline: none; } #searchInput:focus { background: rgba(255, 255, 255, 0.15); box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4); } #searchInput::placeholder { color: rgba(255, 255, 255, 0.6); } #confirmInput { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; background: url(&#39;data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="white"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg>&#39;) center no-repeat; background-size: 24px; border: none; cursor: pointer; opacity: 0.7; transition: opacity 0.3s; } #confirmInput:hover { opacity: 1; } .apps-container { display: grid; grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 20px; width: 100%; max-width: 1000px; margin: 20px 0 40px; } .app-item { background: rgba(30, 30, 50, 0.6); backdrop-filter: blur(10px); border-radius: 20px; padding: 20px 15px; display: flex; flex-direction: column; align-items: center; gap: 12px; transition: all 0.3s; cursor: pointer; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); } .app-item:hover { transform: translateY(-5px); background: rgba(40, 40, 70, 0.7); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3); } .app-icon { width: 50px; height: 50px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: rgba(100, 100, 200, 0.2); font-size: 24px; color: #64b3f4; } .app-name { color: #e2e2e2; font-size: 0.9rem; text-align: center; } .footer { margin-top: 20px; color: rgba(255, 255, 255, 0.5); font-size: 0.9rem; text-align: center; padding: 20px; } /* 响应式设计 */ @media (max-width: 768px) { .logo h1 { font-size: 2.2rem; } .logo p { font-size: 1rem; } .apps-container { grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); gap: 15px; } .app-item { padding: 15px 10px; } .app-icon { width: 40px; height: 40px; font-size: 20px; } } </style> </head> <body> <div class="container"> <div class="logo"> <h1>个性化起始页</h1> <p>探索更高效的上网体验</p> </div> <div class="search-container"> <form action="https://www.baidu.com/s" method="get" target="_blank" id="searchForm"> <input type="hidden" name="hiddenInput" value="3"/> <input type="text" name="wd" placeholder="输入关键词开始搜索..." id="searchInput" autocomplete="off"/> <input type="submit" value="" id="confirmInput"/> </form> </div> <div class="apps-container"> <div class="app-item" data-url="https://www.bilibili.com"> <div class="app-icon"><i class="fab fa-bilibili"></i></div> <div class="app-name">哔哩哔哩</div> </div> <div class="app-item" data-url="https://github.com"> <div class="app-icon"><i class="fab fa-github"></i></div> <div class="app-name">GitHub</div> </div> <div class="app-item" data-url="https://www.csdn.net"> <div class="app-icon"><i class="fas fa-blog"></i></div> <div class="app-name">优快云</div> </div> <div class="app-item" data-url="https://www.iconfont.cn"> <div class="app-icon"><i class="fas fa-icons"></i></div> <div class="app-name">iconfont</div> </div> <div class="app-item" data-url="https://www.aliyun.com"> <div class="app-icon"><i class="fas fa-cloud"></i></div> <div class="app-name">阿里云</div> </div> <div class="app-item" data-url="https://www.cnki.net"> <div class="app-icon"><i class="fas fa-book"></i></div> <div class="app-name">中国知网</div> </div> <div class="app-item" data-url="https://leetcode.cn"> <div class="app-icon"><i class="fas fa-code"></i></div> <div class="app-name">LeetCode</div> </div> <div class="app-item" data-url="https://www.xjtu.edu.cn"> <div class="app-icon"><i class="fas fa-university"></i></div> <div class="app-name">西交大</div> </div> </div> <div class="footer"> <p>© 2023 个性化起始页 | 让上网更高效</p> </div> </div> <script src="https://kit.fontawesome.com/a076d05399.js" crossorigin="anonymous"></script> <script> // 为应用图标添加点击事件 document.querySelectorAll(&#39;.app-item&#39;).forEach(item => { item.addEventListener(&#39;click&#39;, function() { const url = this.getAttribute(&#39;data-url&#39;); if (url) { window.open(url, &#39;_blank&#39;); } }); }); // 搜索框聚焦效果增强 const searchInput = document.getElementById(&#39;searchInput&#39;); searchInput.addEventListener(&#39;focus&#39;, () => { searchInput.style.transform = &#39;scale(1.02)&#39;; }); searchInput.addEventListener(&#39;blur&#39;, () => { searchInput.style.transform = &#39;scale(1)&#39;; }); </script> </body> </html> 加上导入python内置库,在IDLE里
最新发布
09-28
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Shirandexiaowo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值