惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
C
Check Point Blog
J
Java Code Geeks
腾讯CDC
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
量子位
Google DeepMind News
Google DeepMind News
I
InfoQ
The GitHub Blog
The GitHub Blog
aimingoo的专栏
aimingoo的专栏
N
Netflix TechBlog - Medium
Hugging Face - Blog
Hugging Face - Blog
博客园 - Franky
V
V2EX
Blog — PlanetScale
Blog — PlanetScale
T
The Blog of Author Tim Ferriss
小众软件
小众软件
博客园_首页
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
IT之家
IT之家

LINUX DO - 最新话题

谷歌云盘下载700g数据集,求方法 OpenAI推出了100美元的Pro订阅后,plus的Codex 5小时限额大幅缩水 之前买的super grok居然还没掉 关于CPA认证文件周限 佬们,默认CDK的要求是什么等级啊? 最新版本的微信群聊机器人方案 有没有人知道如何free号没有封,那么是否可以循环使用,因为我看主要是周限 L站改版了?吓我一跳,我以为我浏览器崩了 淘宝这种宽带可信吗,500兆移动宽带月费8元到2099年 docker内部应用访问宿主机mysql和redis时被拒绝connection refuse Erp全栈想转行做Ai有什么推荐的吗 boost有bug 佬们,有没有靠谱点的 Plus 购买渠道 大妈,狗妈用的 lg 服务有源头开源项目吗? 有人有能过验证码打码的嘛 上次帖里好像发过通过大模型来打码的 gpt plus 封号似乎也太快了点,一天就给封号了 按流量/token收费的国产官方AI推荐 我算是知道了为什么Oracle总是ABC了 佬友们帮我分析一下 ChatGPT Team账号只有一个人使用和4个席位邀请满了使用的总额度是一样的吗? gpt-free 10个带rt CPA反代claude是默认1m吗? 我终于敢说我做出来windows上tmux的替代了,目标windows/全平台最强的终端Ai编程工具 claude pro升级max,除了原来的$20,好像还能再领一次$100 关于AI agent的知识框架 独乐乐不如众乐乐,分享一下我的的AI对话程序 佬们自建网站支付问题是怎么解决的 怎么能让gpt模仿claude风格输出 codex free已经死了,下一个会是plus或者team吗 请问chatgpt pro里的fast模式,速度快了,降智吗
Leetcode每日一题 —— 396. 旋转函数
SomeBottle · 2026-05-01 · via LINUX DO - 最新话题
力扣 LeetCode 396. 旋转函数 - 力扣(LeetCode) 396. 旋转函数 - 给定一个长度为 n 的整数数组 nums 。 假设 arrk 是数组 nums 顺时针旋转 k 个位置后的数组,我们定义 nums 的 旋转函数  F 为: * F(k) = 0 * arrk[0] + 1 * arrk[1] + ... + (n - 1) * arrk[n - 1] 返回 F(0), F(1), ..., F(n-1)中的最大值 。 生成的测试用例让答案符合 32 位 整数。   示例 1: 输入: nums =... 思路 看了一下示例,感觉是可以直接进行递推的,从 F(n-1) 推出 F(n) ,不过得找一下规律。 正好题目给了示例 1,重新排版一下可以看到: F(0) = (0 * 4) + (1 * 3) + (2 * 2) + (3 * 6) F(1) = (0 * 6) + (1 * 4) + (2 * 3) + (3 * 2) F(2) = (0 * 2) + (1 * 6) + (2 * 4) + (3 * 3) 如果要从 F(0) 推出 F(1) ,相当于把 F(0) 除最后一个数字外的份数全部加一份 , F(1) 到 F(2) 也是类似。 份数全部加一份其实很类似直接加上整个 nums 的和,但是要忽略最后一个数字,因此可以在加上整个数组的和后减去最后一个数字的 n 份。 这样一来递推思路就很清晰了。 代码 class Solution { public: int maxRotateFunction(vector<int>& nums) { // 感觉从 F(0), F(1), ..., F(n-1) 能观察出规律 // F(0) = (0 * 4) + (1 * 3) + (2 * 2) + (3 * 6) // F(1) = (0 * 6) + (1 * 4) + (2 * 3) + (3 * 2) // F(2) = (0 * 2) + (1 * 6) + (2 * 4) + (3 * 3) // // 可以看到每次落到末尾的数字,下一个 F 处就会归零 // 其他数字的份数每次都会 + 1 // F(k) 相当于 F(k-1) 加上 [整个 nums 的和] 一份,然后再减去 [F(k-1) 时最后一个数字] 的 n 份 int n=nums.size(); // 先算出 F(0),以及整个 nums 的和 int f=0; int nSum=0; for(int i=0;i<n;i++){ f+=i*nums[i]; nSum+=nums[i]; } int res=f; // 开始递推 for(int i=1;i<n;i++){ // 加上一份和 f+=nSum; // 减去 n 份最后一个数字 f-=n*nums[n-i]; res=max(res,f); } return res; } }; 2 个帖子 - 2 位参与者 阅读完整话题