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

力扣的板子

板子

  • 线性筛法求质因子的板子
  • 快速幂

线性筛法求质因子的板子

int limit = 100000; //修改为题目中的数字的上限
bool isprime[100005] = {0}; //保存所有1~limit中的数字是不是质数
int myprime[100005] = {0};  //保存2~limit中所有数字的最小质因子
int primes[100000] = {0};   //保存所有1~limit中出现的质数
int tot = 0;                //1~limit中质数的总个数
//保存每一个下标为i的数字对应的质因子的种类个数
int scors[100005] = {0};
int init = [](){memset(isprime,1,sizeof(isprime));for(int i = 2;i<=limit;i++){if(isprime[i]){primes[tot++] = i;myprime[i] = i;}for(int j = 0;j<tot && primes[j]*i <= limit;j++){int val = primes[j];isprime[val*i] = 0;myprime[val*i] = val;if(i%val == 0){break;}}}//计算1e5内的所有质数分数for(int i = 2;i<=limit;i++){int j = i;int cnt = 0;while(j!=1){cnt++;int div = myprime[j];while(j%div == 0){j /= div;}}scors[i] = cnt;}return 0;
}();

快速幂

ll quickmul(ll a,ll b){if(b == 1){return a;}else{if(b % 2 == 0){ll tmp = quickmul(a,b/2);return tmp*tmp%mo;}else{ll tmp = quickmul(a,b/2);return ((tmp*tmp%mo)*a)%mo;}}}
http://www.lryc.cn/news/121804.html

相关文章:

  • 基于Matlab实现路径规划算法(附上15个完整仿真源码)
  • 纯跟踪(Pure Pursuit)路径跟踪算法研究(2)
  • 前后端分离------后端创建笔记(02)
  • Webpack5 Preload/Prefetch技术
  • PHP原生类
  • QGIS3.28的二次开发八:显示shp的属性表
  • 虚拟机安装 Ubuntu桌面版,宿主机无法访问虚拟机 ufw 防火墙简单使用
  • jquery发送ajax练习
  • adb用法,安卓的用户CA证书放到系统CA证书下
  • 【LVS-NAT配置】
  • 时序预测 | MATLAB实现BO-GRU贝叶斯优化门控循环单元时间序列预测
  • 注意:阿里云服务器随机分配可用区说明
  • 【Vue】使用print.js插件实现打印预览功能,超简单
  • 3.5 Spring MVC参数传递
  • linux程序保护机制gcc编译选项
  • 指针与引用:C语言中的内存魔法
  • docker desktop搭建 nginx
  • Redis缓存雪崩、击穿、穿透?
  • Kettle系列(一)下载安装与基础配置
  • MuMu模拟器运行一段时间后Device.Present耗时突然上升
  • 14-矩阵相乘及其运算法则
  • redis学习笔记(八)
  • Wlan——无线服务集和AP的基本概念以及AP的配置
  • 【必看】时序逻辑仿真成组合逻辑?你知道原因吗?
  • PyTorch翻译官网教程-LANGUAGE MODELING WITH NN.TRANSFORMER AND TORCHTEXT
  • SpringBoot复习:(43)如何以war包的形式运行SpringBoot程序
  • Dubbo高手之路2,6种扩展机制详解
  • C语言快速回顾(二)
  • ADB连接安卓手机提示unauthorized
  • 【软件工程】内聚