LeetCode 1390. 四因数 思路从1开始遍历到题目范围的因子,将有这个因子的数因子数加1,因数和加上这个因子。然后遍历nums查表即可。 代码1234567891011121314151617181920212223class Solution {public: const static int l=1e5+5; int dp[l+1]; int cnt[l+1]; void cal(){ for(int i=1;i<=l;i++){ int n=l/i; for(int j=1;j<=n;j++){ int index=i*j; dp[index]++,cnt[index]+=i; } } } int sumFourDivisors(vector<int>& nums) { int res=0; cal(); for(int i=0;i<nums.size();i++) if(dp[nums[i]]==4) res+=cnt[nums[i]]; return res; }}; 参考https://leetcode-cn.com/problems/four-divisors/ ↩ note leetcode code leetcode 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处! LeetCode 2162. 设置时间的最少代价 上一篇 GLSL的LUT实现 下一篇