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

如何自己做网站赚钱前段 网站建设实例

如何自己做网站赚钱,前段 网站建设实例,自贡网站seo,thinkphp 网站模板ch05 数论 素数筛 目标:筛选出 1 ∼ n 1\sim n 1∼n 范围内的所有素数(质数) 为了让时间复杂度是线性的 O ( n ) O(n) O(n) ,需要保证每个合数只被标记一次,不能重复标记。 欧拉筛的做法是令 x 只被它的最小质因…

ch05 数论

素数筛

目标:筛选出 1 ∼ n 1\sim n 1n 范围内的所有素数(质数)

为了让时间复杂度是线性的 O ( n ) O(n) O(n) ,需要保证每个合数只被标记一次,不能重复标记。

欧拉筛的做法是令 x 只被它的最小质因子 p 1 p_1 p1 乘以 i i i 标记为合数。

为了做到这一点,当 i % p == 0 时,就不用枚举更大的质数了,可以跳出循环。

代码:

const int N = 50000010;
bool isp[N]; // isp[x]=true表示x是质数,false表示不是质数
vector<int> prime; // prime储存质数
void eulerPrime(int n) { // 筛选出1~n范围的所有质数memset(isp, true, sizeof(isp));isp[0] = isp[1] = false;for (int i = 2; i <= n; i++) {if (isp[i]) prime.push_back(i);for (int p : prime) { // 遍历当前筛出的所有质数if (i * p > n) break;isp[i * p] = false; // 数字i*p是合数,p是i*p的最小质因数if (i % p == 0) break; // 保证每个合数只被最小质因子*i标记}}
}

欧拉筛不止可以用来筛素数,也可以在筛素数过程中顺便记录每个数的最小质因子、最小质因子对应的指数等。

模运算定律

加法:(a + b) % m == (a % m + b % m) % m

乘法:(a * b) % m == (a % m) * (b % m) % m

减法:(a − b) % m == (a % m − b % m + m) % m

  • 注意出现负数(减法)的地方,要 + m,避免计算结果为负数

  • 对于要求答案 % m 的题目,通常不能等到输出答案时才 % m,因为计算过程就可能溢出数据范围了,所以要利用上面的模运算定律在计算过程中 % m。

除法:除法没有简单的模运算定律。想要在除法的计算过程中取模,需要使用逆元

指数:

  • 特别注意指数不能直接 % m ,例如要计算 a b % m a^b\%m ab%m ,算成了 a b % m % m a^{b\%m} \%m ab%m%m 就会出错。
  • 对指数取模要用到扩展欧拉定理,不是本节课内容。

快速幂

快速幂是在 O ( log ⁡ b ) O(\log b) O(logb) 的时间复杂度内计算 a b a^b ab 的技巧 。思想是将幂的计算按照指数的二进制表示来分割成更小的任务。

ll fastPow(ll a, ll b, int p) {a %= p;if (b == 0) return 1;ll tmp = fastPow(a, b / 2, p);if (b & 1) return tmp * tmp % p * a % p;return tmp * tmp % p;
}

逆元

除以 x,相当于乘以“x 的乘法逆元”,这样就可以避免除法运算

费马小定理:如果 p 是一个质数,并且 x 不是 p 的倍数,则有 x p − 1 ≡ 1 ( m o d p ) x^{p-1}\equiv 1\pmod p xp11(modp)

代码:

// 返回 x 模 m 意义下的乘法逆元
ll inv(ll x, int m) {if (x % p == 0) return -1; // -1 表示 x 不存在模 m 意义下的乘法逆元return fastPow(x, m - 2, m);
}

由费马小定理求逆元比较方便,也好理解,但有局限性,注意 p 必须是质数

除法取模:计算 a / x % m 可以转换为 a * inv(x, m) % m

http://www.dtcms.com/a/566997.html

相关文章:

  • 做3d建模贴图找哪个网站广安北京网站建设
  • 电脑做会计从业题目用什么网站数据分析师要学什么
  • 下载 | Win11 官方精简版,系统占用空间极少!(10月末更新、Win 11 IoT物联网 LTSC版、适合老电脑安装使用)
  • langchain_agent智能体
  • 表3-5企业网站建设可行性分析北京网站建设建站公司
  • 网站成功秘诀专业团队下一句
  • seo网站收录工具上海网站开发外包
  • 咖啡店网站首页怎么做手机网站服务器
  • 郑州专业的网站建设wordpress的文件夹
  • 学做视频的网站有哪些内容百度模拟点击软件判刑了
  • 网站建设 企业企业注册号
  • 网站开发平台金华建站模板
  • 如何设计一个秒杀系统(上)
  • 舟山手机网站建设红河州seo怎么做整站排名
  • 网站建设 广西效果图网站名字
  • 韩国做美食网站有哪些第二季企业网站开发
  • git worktree (镜像站加速)
  • 去哪找网站建设公司互联网+创业项目ppt成品
  • 上海市普陀区建设规划局网站tomcat做静态网站
  • 韶关建设局网站营销型企业网站建站
  • 河北定制网站建设调试360建筑网发布的信息怎么删除
  • 学习笔记记录记录
  • 布吉网站设计馆陶网站建设电话
  • 东莞勒流网站制作seo网站排名优化服务
  • 郑州网站建设搜索优化使用wordpress在ec2上建网站
  • 企业网站建设推荐乐云seo物联网方案设计与实现
  • 拓尔思网站建设公司sentos上部署.net网站
  • 浏览器直接进入网站贵州省教育厅办公室关于开展2014年学校门户网站建设评估的通知
  • 网站建设深圳给原码wordpress搭建网站教程
  • 淘宝seo是指网站用什么软件seo排名优化