当前位置: 首页 > news >正文

2025年7月26日训练日志

2523. 范围内最接近的两个质数 - 力扣(LeetCode)

简单模拟+线性素数筛

class Solution {
public:vector<int> closestPrimes(int left, int right) {int n = right + 1;vector<int>is(n,1);is[0] = 1;queue<int>q;int res = INT_MAX;int last = -1;for(int i=2;i<n;i++){if(is[i]){if(i>=left && i<=right){if(q.size()==2){int cnt = q.back() - q.front();if(i-last < cnt){q.pop();q.pop();q.push(last);q.push(i);}res = min(res,cnt);}if(q.size()<2){q.push(i);}last = i;}if((long long)i*i<n){for(int j=i*i;j<n;j+=i){is[j] = 0;}}}}vector<int>ans;if(q.size()==2){while(!q.empty()){ans.push_back(q.front());q.pop();}return ans;}else{return {-1,-1};}}
};

 2521. 数组乘积中的不同质因数数目 - 力扣(LeetCode)

 分解质因数,可以直接对因数进行分解,不用乘了再进行分解

class Solution {
public:int distinctPrimeFactors(vector<int>& nums) {unordered_set<int>st;for(int num : nums){int x = num;for(int i=2;i*i<=x;i++){while(x % i == 0){st.insert(i);x /= i;}}if(x > 1) st.insert(x);}return st.size();}
};

2507. 使用质因数之和替换后可以取到的最小值 - 力扣(LeetCode)

 暴力

class Solution {
public:int smallestValue(int n) {int sum = n;int prev;do {n = sum;prev = n;sum = 0;int temp = n;for (int i = 2; i * i <= temp; i++) {while (temp % i == 0) {sum += i;temp /= i;}}if (temp > 1) sum += temp;} while (prev != sum);return sum;}
};

172. 阶乘后的零 - 力扣(LeetCode)

 题目要求找阶乘后的0的数量,能产生0的质因子就只有2和5,缺一不可,因此那就对n到1计算质因数,然后取2和5的最小数

class Solution {
public:int trailingZeroes(int n) {vector<int>a(10005,0);for(int u=2;u<=n;u++){int num = u;for(int i=2;i*i<=num;i++){while(num%i==0){a[i]++;num/=i;}}if(num>1) a[num]++;}return min(a[2],a[5]);}
};

http://www.xdnf.cn/news/1195381.html

相关文章:

  • 最优估计准则与方法(4)最小二乘估计(LS)_学习笔记
  • 幸福网咖订座点餐小程序的设计与实现
  • element-plus安装以及使用
  • 《基于雅可比矢量近似的EIT触觉传感灵敏度非均匀校正》论文解读
  • 微分方程入门之入门之入门,纯笔记
  • 实现网页访问/接口调用KernelMemory
  • S7-200 SMART 数字量 I/O 组态指南:从参数设置到实战案例
  • Ubuntu系统 系统盘和数据盘扩容具体操作
  • C++类和对象(三)
  • Coze 与 Dify 深度对比:2025 年 AI 智能体平台选型指南
  • VMware Workstation17下安装Ubuntu20.04
  • JVM-GC 相关知识
  • 利用RAII与析构函数避免C++资源泄漏
  • Linux进程替换
  • Pinia快速入门
  • C++20 协程
  • 联表实现回显功能
  • 【Canvas与旗帜】条纹版大明三辰旗
  • 一文速通《多元函数微分学》
  • 从0到1学Pandas(七):Pandas 在机器学习中的应用
  • ART配对软件使用
  • Netty中DefaultChannelPipeline源码解读
  • Python编程:初入Python魔法世界
  • Android ADB命令之内存统计与分析
  • 暑期算法训练.9
  • flink查看taskManager日志
  • 多模态大模型与 AI 落地:从技术原理到实践路径的深度解析
  • Flutter实现Retrofit风格的网络请求封装
  • oracle数据库表空间碎片整理
  • 宏观杠杆率及其数据获取(使用AKShare)