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

Pollard-Rho 质因数分解板子

调用 fac(n) map 中会存下 \(n\) 的所有质因子(去重)

#include<bits/stdc++.h>
#define int long long
using namespace std;
using ull=unsigned long long;
mt19937 rnd(time(0));
unordered_map<int,int> mp;
int qpow(int x,int p,int mod) {int ans=1;while(p) {if(p&1) ans=(__int128)ans*x%mod;x=(__int128)x*x%mod;p>>=1;}return ans;
}
bool MR(int p) {if(p<2) return false;if(p==2) return true;if(p==3) return true;int d=p-1,r=0;while(d%2==0) r++,d>>=1;for(int k=0; k<10; k++) {int a=rnd()%(p-2)+2,x=qpow(a,d,p);if(x==1||x==p-1) continue;for(int i=0; i<r-1; i++) {x=(__int128)x*x%p;if(x==p-1) break;}if(x!=p-1) return false;}return true;
}
int PR(int x) {int s=0,t=0,c=rnd()%(x-1)+1,val=1;for(int i=1; ; i*=2,s=t) {for(int j=1; j<=i; j++) {t=((__int128)t*t%x+c)%x;val=(__int128)val*abs(t-s)%x;if(j%127==0||j==i) {int d=__gcd(val,x);if(d>1) return d;}}}
}
void fac(int x) {if(x==1) return;if(MR(x)) return mp[x],void();int p=PR(x);while(p==x) p=PR(x);while(x%p==0) x/=p;fac(x),fac(p);
}
http://www.jsqmd.com/news/129404/

相关文章:

  • 2025最新新能源客车怎么选?宇通客车以全系产品链领跑绿色出行新时代 - 深度智识库
  • 筑牢工业安全防线:基于电鱼智能 RK3568 的双千兆网口防火墙架构方案
  • 3.7V升压5V芯片深度剖析:PW5100/PW5300A/PW6276,选型无忧
  • 汇付支付notify返回哪些信息
  • 2025 年 12 月高压清洗服务权威推荐榜:专业上门施工与深度保养,涵盖管道、化粪池及市政道路的全场景高效洁净解决方案 - 品牌企业推荐师(官方)
  • Open-AutoGLM架构设计精讲,揭秘支撑万级并发的底层逻辑
  • SMBus协议短报文与长报文对比解析
  • 2025年口碑好的封阳台系统门窗厂家推荐及选购参考榜 - 品牌宣传支持者
  • 告别“电老虎”!基于电鱼智能 RK3568 的低功耗工业边缘算力架构演进方案
  • 47、编程知识综合解析与实践
  • UVM中针对DUT的寄存器模型适配详解
  • GuideNav:面向盲人旅行者的纯视觉机器人导航助手的用户知情开发 - MKT
  • 48、Windows Forms 控件详解
  • Open-AutoGLM上线GitHub:5大核心功能带你抢先掌握AI编程新范式
  • 医疗 AI 边缘化:电鱼智能 RK3576 离线部署 DeepSeek 医疗大模型实践指南
  • 还在花钱买API?用Open-AutoGLM自建免费高性能模型服务,省下90%成本
  • 2025年质量好的成都集装箱移动房屋/集装箱TOP实力厂家推荐榜 - 品牌宣传支持者
  • GPU选型避坑指南,部署Open-AutoGLM必须掌握的4类显卡对比
  • LangFlow是否将成为下一代AI IDE?行业专家观点
  • jlink驱动下载快速理解:5分钟掌握基本流程
  • Activiti 连接瀚高数据库
  • 【Open-AutoGLM开源揭秘】:如何利用GitHub最新AI框架实现自动化代码生成
  • 49、Windows Forms 控件详解
  • LED基础原理详解:零基础入门必看的全面讲解
  • 收藏!从信息匹配到智能规划,Agentic RAG架构实现全解析(小白程序员入门必备)
  • 毫秒级精准识别:利用电鱼智能 RK3588 的高性能 NPU 加速病理切片 AI 辅助诊断
  • 电路仿真circuits网页版中比较器电路的设计核心要点
  • 在ARM平台集成Synaptics驱动的实战项目应用
  • 50、Windows Forms 控件详解
  • 数据错位危机:当2TB数据库遭遇对齐错误