news 2026/9/3 1:40:19

leetcode 1390

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 1390

1390: 四因数

思路一:枚举

我们可以遍历数组 nums 中的每个元素,依次判断这些元素是否恰好有四个因数。对于任一元素 x,我们可以用类似质数判定的方法得到它的因数个数,其本质为:如果整数 x 有因数 y,那么也必有因数 x/y,并且 y 和 x/y 中至少有一个不大于 sqrt(x)。这样我们只需要在 [1, sqrt(x)] 的区间内枚举可能为整数 x 的因数 y,并通过 x/y 得到整数 x 的其它因数。

如果 x 恰好有四个因数,我们就将其因数之和累加到答案中。

class Solution { public: int sumFourDivisors(vector<int>& nums) { int ans=0; for(int x:nums){ int cnt=0,total=0; for(int i=1;i<=sqrt(x);i++){ int j=x/i; if(j*i==x){ if(j==i){ cnt++; total+=i; } else{ cnt+=2; total+=i+j; } } } if(cnt==4) ans+=total; } return ans; } };

进阶:埃拉托斯特尼筛法(埃氏筛)

class Solution { public: int sumFourDivisors(vector<int>& nums) { // C 是数组 nums 元素的上限,C3 是 C 的立方根 int C = 100000, C3 = 46; vector<int> isprime(C + 1, 1); vector<int> primes; // 埃拉托斯特尼筛法 for (int i = 2; i <= C; ++i) { if (isprime[i]) { primes.push_back(i); } for (int j = i + i; j <= C; j += i) { isprime[j] = 0; } } // 通过质数表构造出所有的四因数 unordered_map<int, int> factor4; for (int prime: primes) { if (prime <= C3) { factor4[prime * prime * prime] = 1 + prime + prime * prime + prime * prime * prime; } } for (int i = 0; i < primes.size(); ++i) { for (int j = i + 1; j < primes.size(); ++j) { if (primes[i] <= C / primes[j]) { factor4[primes[i] * primes[j]] = 1 + primes[i] + primes[j] + primes[i] * primes[j]; } else { break; } } } int ans = 0; for (int num: nums) { if (factor4.count(num)) { ans += factor4[num]; } } return ans; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 21:30:46

品牌视觉识别系统:统一宣传材料风格

Fun-ASR WebUI&#xff1a;让大模型语音识别真正触手可及 在远程办公、在线教育和智能客服日益普及的今天&#xff0c;如何快速、准确地将语音内容转化为结构化文本&#xff0c;已成为许多企业和个人提升效率的关键一环。传统语音识别工具要么依赖复杂的命令行操作&#xff0c;…

作者头像 李华
网站建设 2026/9/1 7:57:41

AIGC内容生产:语音输入→文本→图像全流程

AIGC内容生产&#xff1a;语音输入→文本→图像全流程 在一场跨时区的远程会议结束后&#xff0c;团队成员不再需要手动整理长达两小时的讨论录音。只需将音频上传至系统&#xff0c;几分钟后&#xff0c;一份结构清晰、术语准确的文字纪要自动生成&#xff0c;并进一步被转化为…

作者头像 李华
网站建设 2026/8/30 10:56:51

菜谱记录创新:边做饭边说步骤自动生成食谱

菜谱记录创新&#xff1a;边做饭边说步骤自动生成食谱 在厨房里&#xff0c;最怕的不是火候掌握不好&#xff0c;而是刚下锅时灵光一闪的“加点八角提香”&#xff0c;做完菜却怎么也想不起来。更别提一边颠勺一边拿手机录音、事后还要逐字整理笔记——这哪里是做菜&#xff0c…

作者头像 李华
网站建设 2026/9/2 15:18:53

市场调研访谈:焦点小组讨论内容主题聚类

市场调研访谈&#xff1a;焦点小组讨论内容主题聚类 在一场持续一小时的焦点小组访谈中&#xff0c;六位消费者围绕新推出的会员服务畅所欲言。有人提到“积分兑换太慢”&#xff0c;也有人抱怨“专属客服根本联系不上”。这些声音真实而零散&#xff0c;像一片未经整理的语言森…

作者头像 李华
网站建设 2026/9/2 20:38:11

伦理问题辩论:不同立场论据自动归类

伦理问题辩论&#xff1a;不同立场论据自动归类 在人工智能日益深入公共讨论的今天&#xff0c;一个尖锐的问题浮现出来&#xff1a;当算法开始参与价值判断时&#xff0c;我们如何确保它不会强化偏见、窄化视野&#xff1f;设想这样一场场景——某政策听证会的录音长达六小时&…

作者头像 李华
网站建设 2026/9/2 22:06:47

Odoo:世界排名第一的免费开源WMS系统推荐

Odoo免费开源的仓库管理系统&#xff08;WMS&#xff09;运用行业前沿的实践经验&#xff0c;对日常仓库运营加以优化&#xff0c;涵盖移动射频条码扫描、既定的装卸与拣货策略、任务管理、退货授权收据以及循环盘点计划等方面。鉴于仓库往往需要处理数以百计乃至数以千计的库存…

作者头像 李华