相应题目链接:https://vjudge.net/contest/175786#overview

1.线性筛选素数:参考http://blog.csdn.net/zhang20072844/article/details/7647763

#include N 100000+5
int prime[N];
bool s[N];
void Prime()
{int i,j,k,t;//判断是否素数for (i=2; i<=N; i+=2) s[i]=0;for (i=1; i<=N; i+=2) s[i]=1;s[1]=0;s[2]=1;for (i=3; i<=sqrt(N); i+=2) {if (s[i]){k=2*i;//应为所有偶数已经剔除,所以此处t=3*i(相当于)也就是此次剔除的仍是奇数,所以避免了重复剔除偶数,速度快。t=i+k;while (t<=N){s[t]=0;t=t+k;}}}//素数打表k=1;prime[1]=2;for (i=3; i<=N; i+=2){if (s[i]==1){k++;prime[k]=i;}}
}

2.快速幂:

int pow(int a,int b)
{int ans=1;while(b){if(b&1)ans=ans*a;a=a*a;b=b>>1;}return ans;
}

3.欧几里德gcd+求乘法逆元x:(ax+by=c//ax=c+by)

通解
 x = x0 + (b/gcd)*t
 y = y0 - (a/gcd)*t

int e_gcd(int a,int b,int &x,int &y)
{if(b==0){x=1;y=0;return a;}int gcd=e_gcd(b,a%b,x,y);int t=x;x=y;y=t-a/b*y;return gcd;
}
int main()
{int x,y,c;cin>>a>>b; //ax+by=cgcd=e_gcd(a,b,x,y);if(c%gcd!=0)puts("无解");else{x=x*(c/gcd);printf("%d\n",(x%b+b)%b);}
}

4.Lucas求c(n,m)%p (n>10e6用)
Lucas(n,m,p)=C(n%p,m%p)* Lucas(n/p,m/p,p)

#include<iostream>
#include<cstdio>
#include<algorithm>
#define LL long long
using namespace std;
int t;
LL pow(LL a,LL b,LL p)
{LL ans=1;while(b){if(b&1)ans=(ans*a)%p;a=(a*a)%p;b=b>>1;}return ans;
}
LL C(LL n, LL m,LL p)
{LL i;if(m==0)return 1;if(m>n-m)m=n-m;LL up=1,down=1;for(i=1; i<=m; i++){up=(up*(n-i+1))%p;down=(down*i)%p;}return up*pow(down,p-2,p)%p;
}
LL lucas(LL n,LL m,LL p)
{if(m==0)return 1;return C(n%p,m%p,p)*lucas(n/p,m/p,p);
}
int main()
{scanf("%d",&t);LL m,n,p;while(t--){scanf("%lld%lld%lld",&n,&m,&p);printf("%lld\n",lucas(n,m,p));}return 0;
}

5.筛选欧拉函数
参考:http://blog.csdn.net/sentimental_dog/article/details/52002608

void init()
{euler[1]=1;for(int i=2; i<Max; i++)euler[i]=i;for(int i=2; i<Max; i++)if(euler[i]==i)for(int j=i; j<Max; j+=i)euler[j]=euler[j]/i*(i-1);//先进行除法是为了防止中间数据的溢出
}

8.2学长讲解(数论入门)相关推荐

  1. 和与余数的和同余理解_5 同余 ——数论入门知识讲解系列

    数学竞赛 数论是纯粹数学的分支之一,主要研究整数的性质,按研究方法分为初等数论和高等数论.中学生(甚至小学生)课外数学兴趣小组的许多内容是属于初等数论的,各级别数学竞赛也会把初等数论作为重点内容进行考 ...

  2. AutoSAR系列讲解(入门篇)5.2-描述文件

    AutoSAR系列讲解(入门篇)5.2-描述文件 描述文件 一.主要流程 二.各描述文件介绍 1.SWC描述文件 2.系统约束描述文件 3.ECU资源描述文件 4.系统配置描述文件 5.ECU提取文件 ...

  3. matlab狄利克雷函数,数论入门1——莫比乌斯函数,欧拉函数,狄利克雷卷积,线性筛,莫比乌斯反演,杜教筛...

    数论入门1 一个菜鸡对数论的一点点理解... 莫比乌斯函数 定义函数$\mu(n)$为: 当n有平方因子时,$\mu(n)=0$. 当n没有平方因子时,$\mu(n)=(-1)^{\omega(n)} ...

  4. AutoSAR系列讲解(入门篇)4.1-BSW概述

    AutoSAR系列讲解(入门篇)4.1-BSW概述 BSW概述 一.什么是BSW 二.BSW的结构 1.微控制器硬件抽象层(MCAL) 2.ECU抽象层 3.服务层 四.复杂驱动 三.再将结构细分 B ...

  5. AutoSAR系列讲解(入门篇)5.1-方法论概述

    AutoSAR系列讲解(入门篇)5.1-方法论概述 方法论概述 一.一些必要的概念 1.供应链上的称呼 2.什么是方法论 二.工作流程 1.普通流程 2.AutoSAR标准流程 方法论概述 -> ...

  6. AutoSAR系列讲解(入门篇)6.1-Vector的工具链简介

    AutoSAR系列讲解(入门篇)6.1-Vector的工具链简介 Vector的工具链简介 一.PREEvision 二.vVIRTUALtarget 三.DaVinci 四.CANoe 五.CANa ...

  7. AutoSAR系列讲解(入门篇)1.2-AutoSAR概述

    AutoSAR系列讲解(入门篇)1.2-AutoSAR概述 AutoSAR概述 一.到底什么是AutoSAR 1.大白话来讲 2.架构上来讲 应用软件层: 实时运行环境: 基础软件层: 3.工具链上来 ...

  8. AutoSAR系列讲解(入门篇)1.1-AutoSAR发展

    AutoSAR系列讲解(入门篇)1.1-AutoSAR发展 AutoSAR发展 一.AutoSAR成员 二.AutoSAR历史发展 三.使用AutoSAR前的状态 1.原始状态 2.进阶状态 四.使用 ...

  9. AutoSAR系列讲解(入门篇)2.2-SWC的类型

    AutoSAR系列讲解(入门篇)2.2-SWC的类型 SWC的类型 一.原子级的SWC(Atomic SWC) 二.集合级的SWC(Composition SWC) 三.特殊的SWC SWC的类型 - ...

  10. 【小组专题一:数论入门:整数】数和序列 | 和与积 | 数学归纳与第二数学归纳

    数论入门:整数 [1.1 数和序列] 练习中的证明: [1.2 和与积] 课后练习: [1.3 数学归纳法] 课后练习(都用数学归纳或者第二数学归纳证明): ·|· 根据<初等数论及其应用> ...

最新文章

  1. python文本筛选html_Python使用正则表达式去除(过滤)HTML标签提取文字功能
  2. 如何在Android Studio里关掉instant run
  3. 文本分类有哪些论文中很少提及却对性能有重要影响的tricks?
  4. 整数快速幂(原理+模板)
  5. 目标检测——如何获取图片的唯一ID
  6. jdk15不安装jre_弄懂 JRE、JDK、JVM 之间的区别与联系,你知道多少?
  7. classmethod staticmethod一些领悟
  8. 汽车故障诊断技术【4】
  9. linux分区修复命令行,Linux技巧:使用Fsck命令修复损坏的分区
  10. 微信小程序云开发--上传图片到云存储获取并展示云存储里的图片
  11. VBA中调用Excel函数
  12. 金蝶KIS商贸版即时库存表二次开发增加保质期有效期至字段列
  13. 《视频解密》中文版(第四版) 第七章 数字视频处理(第一部分)
  14. 微信昵称乱码 mysql_微信昵称乱码及mysql编码格式设立(utf8mb4)_mysql
  15. 2021-01-20
  16. 【JAVA_POI】解析PPT文档(ppt和pptx)4.1.2版本
  17. 变量被重复定义的问题的讨论
  18. camunda7、camunda8对比分析,哪个版本好
  19. 大商创是用哪种php柜架写的,大商创商家入驻入口去除说明简述
  20. Threejs系列--9游戏开发--沙漠赛车游戏【基础场景渲染】

热门文章

  1. webstorm界面主题
  2. 计算机网络第七版-《软件工程》试题(第4套含答案)
  3. 2022华为杯研究生数学建模竞赛F题思路解析
  4. CentOS mysql常用命令
  5. Java遍历Map集合的四种方式
  6. i3wm i3status状态栏实时显示网速
  7. 离散系统的李雅普诺夫稳定判据
  8. linux的vi命令详解,linux vi命令详解
  9. 大学Mooc电脑版中的视频资源下载
  10. android 获取机顶盒ip,在电视机顶盒端查看IP地址 - 零成本让你的电视盒子变身无线路由器...