这些东西大部分之前都学过了啊qwq

zhx大概也知道我们之前跟着他学过这些了qwq,所以:

先讲新的东西qwq:(意思就是先讲我们没有学过的东西)

进制转换

10=23+21=1010(2

=32+30=101(3

进制转换的两种操作:

1.10进制=>k进制

短除法:

55(10

55/3=18……1

18/3=6…… 0

6/3=2…… 0

2/3=0…… 2

55(10=2001(3

2.k进制=>10进制

k进制数x,n~0

xnxn-1xn-2……x0k

= xn*kn+xn-1*kn-1+xn-2*kn-2……x0*k0

特殊的进制:

二进制  想要的二进制表示前+0  举个栗子:01001 c++识别为9

八进制

十进制

十六进制  想要直接写16进制数+0x  举个栗子:0x1001=16 3+160=4097;10~15:用字母代表 A=10,B=11,C=12……F=15

0x3f3f3f3f= 3*167+15*166+3*165+15*164+3*163+15*162+3*161+15*160

高精度:

int -231~231-1

long long -263~263-1≈1020

目的:解决大数运算

方法:竖式加减乘除法

加法:个位对齐,逐位相加。

2333+233=2566 

储存:

19260817

从0~n,存从最高位到最低位✘  对不齐(麻烦)

0=>n 存 个位=>最高位

这时个位一定对齐的,逐位相加就可以了qwq

乘法:

回到数论qwq:

质数:

素数判定:O(根号n)

证明啊qwq:

筛法:

#include<iostream>

for(int i=2;i<=n;i++)

for(int  b=i*2;b<=n;b+=i)

not_prime[b]=true;

约等于=n(1+1/2+1/3+……+1/n);调和级数

约等于nlogn

埃氏筛:

O(nloglogn)

一个合数,一定会被筛质数的倍数是被筛掉

for(int i=2;i<=n;i++)

if(not_prime[i] =false) //只筛掉质数的倍数

for(int  b=i*2;b<=n;b+=i)

not_prime[b]=true;

线性筛:(保证每个数只被最小的质因数筛掉)

memset(not_prime,0,sizeof(not_prime));

not_prime[1]=true;

for(int i=2;i<=n;i++){}

if(!not_prime[i])prime[++prime_count]=i;

for(int  j=1;j<=prime_count;j++){

if(prime[j]*i>n)break;

not_prime[prime[j]*i]=true;

if(i%prime[j]==0)break;//保证每个数只被筛一次且是被他最小质因子筛掉;

}

}

gcd:

int gcd(int a,int b){

if(b==0) return a;

else return gcd(b,a%b);

}

内置函数:__gcd(下划线下划线gcd)(最好不要用)

扩展欧几里得算法qwq

令gcd(a,b)=g;

那么ax+by=g;

现在已知gcd(a,b)=g;

求得ax+by=g的一组解;

逆元:

费马小:

(mod p)

欧拉定理:

(mod m)

gcd(a,m)=1;

φ(m),有几个数和m是互质的:

m分解质因数:

φ(m)= 

费马小是欧拉的特殊形式qwq

mod m,m不是质数;

/x  <=>  *xφ(m-1(mod m)

end-

【五一qbxt】day4 数论知识的更多相关文章

  1. 【五一qbxt】day7-2 选择客栈

    停更20天祭qwq(因为去准备推荐生考试了一直在自习qwq) [noip2011选择客栈] 这道题的前置知识是DP,可以参考=>[五一qbxt]day3 动态规划 鬼知道我写的是什么emm 这道 ...

  2. RSA算法原理——(2)RSA简介及基础数论知识

    上期为大家介绍了目前常见加密算法,相信阅读过的同学们对目前的加密算法也算是有了一个大概的了解.如果你对这些解密算法概念及特点还不是很清晰的话,昌昌非常推荐大家可以看看HTTPS的加密通信原理,因为HT ...

  3. pwn学习日记Day4 基础知识积累

    知识杂项 *:字符串重复 空指令NOP:\x90 cmp:是比较指令,cmp的功能相当于减法指令.它不保存结果,只是影响相应的标志位. xor:将两个操作数进行异或运算,并将结果存放到操作数1中. s ...

  4. 数论知识总结——史诗大作(这是一个flag)

    1.快速幂 计算a^b的快速算法,例如,3^5,我们把5写成二进制101,3^5=3^1*1+3^2*2+3^4*1 ll fast(ll a,ll b){ll ans=;,a=mul(a,a)))a ...

  5. BZOJ1257(数论知识)

    感觉做法很神奇……想不到啊qwq 题目: Description 给出正整数n和k,计算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值 其中k ...

  6. bzoj 1951 [Sdoi2010]古代猪文(数论知识)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1951 [思路] 一道优(e)秀(xin)的数论题. 首先我们要求的是(G^sigma{ ...

  7. bzoj 2242 [SDOI2011]计算器(数论知识)

    Description 你被要求设计一个计算器完成以下三项任务: 1.给定y,z,p,计算Y^Z Mod P 的值: 2.给定y,z,p,计算满足xy≡ Z ( mod P )的最小非负整数: 3.给 ...

  8. 清北澡堂 Day2 下午 一些比较重要的数论知识整理

    1.欧拉定理 设x1,x2,.....,xk,k=φ(n)为1~n中k个与n互质的数 结论一:axi与axj不同余 结论二:gcd(axi,n)=1 结论三:x1,x2,...,xk和ax1,ax2, ...

  9. qbxt Day4

    1.树形dp 例题1 树上最长链 其实有两种方法,但为了简便,就只学了最通用的dp算法 我们考虑设dp[i][0/1]表示以i为根的最长路和次长路,然后拼接就行了 第二维0表示最长路,1表示次长路 i ...

随机推荐

  1. 解决 vue-cli构建项目自动打开浏览器问题

    1.打开项目下的config/index.js 2.找到module.exports的 dev下的 autoOpenBrowser ,将 false 改成 true 3.控制台输入:npm run d ...

  2. python面向对象的三大特征--封装

    #coding:utf-8 __author__="tang" #第一个层面的封装:类就是麻袋,本身就是一种封装 #第二个层面的封装:类中定义私有的,只在类的内部使用,外部无法访问 ...

  3. [POI2008]Sta(树形dp)

    [POI2008]Sta Description 给出一个N个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 Input 给出一个数字N,代表有N个点.N<=1000000 下面 ...

  4. MFC消息详解 (WindowProc|OnCommand|OnNotify)

    1. 怎样使用MFC发送一个消息用MFC发送一个消息的方法是, 首先,应获取接收消息的CWnd类对象的指针: 然后,调用CWnd的成员函数SendMessage( ). LRESULT Res=pWn ...

  5. mybaties数据源配置类型(POOLED、JNDI、UNPOOLED)

    dataSource的类型可以配置成其内置类型之一,如UNPOOLED.POOLED.JNDI. 如果将类型设置成UNPOOLED,mybaties会为每一个数据库操作创建一个新的连接,并关闭它.该方 ...

  6. 配置 Kibana

    Products Cloud Services Customers Learn downloads EN Docs Kibana 用户手册 » 搭建 » 配置 Kibana «  在 Windows ...

  7. Callable使用示例

    之前工作中也有使用过Callable,但是却没有使用Thread对象去操作过,今晚 小组培训,涨知识了,现特意记录一下,以免忘记. 先看一下Thread的构造器 可以看到,Thread类并没有提供参数 ...

  8. re模块的高级使用

    主要有四个方法: search : 从字符串的任意位置开始检索,首次匹配即结束 findall : 全部匹配 sub : 将正则匹配结果进行替换 split : 根据正则匹配结果将字符串进行切分,然后 ...

  9. Intel CPU编号详解

    一.概述 Intel(英特尔)是当前最主流的台式机.笔记本.服务器CPU厂商.和英特尔类似的还有AMD厂商的CPU. Intel生产的CPU型号繁多,每个型号的CPU都有对应的编号.这个编号有特定意义 ...

  10. vue项目中使用element的dialog中引入ztree却不能初始化解决办法

    一开始我在 里边写的,发现获取不到,那么采用dialog自带的回调函数,窗口打开后opend进行处理, 结果: