
数论
# 数论
OPA_heiyaa
嗨嗨嗨
展开
-
HDU--4548--美素数
小明对数的研究比较热爱,一谈到数,脑子里就涌现出好多数的问题,今天,小明想考考你对素数的认识。问题是这样的:一个十进制数,如果是素数,而且它的各位数字和也是素数,则称之为“美素数”,如29,本身是素数,而且2+9 = 11也是素数,所以它是美素数。给定一个区间,你能计算出这个区间内有多少个美素数吗?Input第一行输入一个正整数T,表示总共有T组数据(T <= 10000)。接下来共T行,每行输入两个整数L,R(1<= L <= R <= 1000000),表示区间的左值原创 2020-05-23 20:08:38 · 325 阅读 · 0 评论 -
模板--逆元求法--LibreOJ--110
这是一道模板题。给定正整数nn与pp,求1∼n1∼n中的所有数在模pp意义下的乘法逆元。Input一行两个正整数nn与ppOutputnn行,第ii行一个正整数,表示ii在模pp意义下的乘法逆元。样例输入10 13样例输出179108112534思路一:费马小定理;#include<algorith...原创 2020-05-07 10:55:01 · 531 阅读 · 0 评论 -
模板--HihoCoder--1303--解线性方程组
题目不再描述;输入第1行:1个正整数, N,2≤N≤1,000。第2..N+1行:2个正整数, 第i+1行表示第i组m,r,2≤m≤20,000,000,0≤r<m。计算过程中尽量使用64位整型。输出第1行:1个整数,表示满足要求的最小X,若无解输出-1。答案范围在64位整型内;Sample Input33 25 37 2Sample Output2...原创 2020-05-07 08:26:47 · 160 阅读 · 0 评论 -
计蒜客--T1581--欧拉函数求互质的个数
这里我们定义\varphi(n)φ(n)表示所有小于等于nn与nn互质数的个数。例如\varphi(10) = 4φ(10)=4,因为我们可以在1 \sim 101∼10中找到1,3,7,91,3,7,9与1010互质。输入格式第一行输入一个整数tt,表示测试数据组数。接下来tt行,每行有一个整数nn。输出格式对于每组测试数据输出\var...原创 2020-05-06 16:24:35 · 420 阅读 · 0 评论 -
计蒜客--T1594--欧拉函数求互质的个数
这里我们定义\varphi(n)φ(n)表示所有小于等于nn与nn互质数的个数。例如\varphi(10) = 4φ(10)=4,因为我们可以在1 \sim 101∼10中找到1,3,7,91,3,7,9与1010互质。输入格式第一行输入一个整数tt,表示测试数据组数。接下来tt行,每行有一个整数nn。输出格式对于每组测试数据输出\var...原创 2020-05-06 16:22:51 · 448 阅读 · 0 评论 -
模板--HihoCoder--1298--欧拉函数
思路:https://blog.youkuaiyun.com/queque_heiya/article/details/105947772直接上模板即可;#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<cmath>usin...原创 2020-05-06 16:19:43 · 140 阅读 · 0 评论 -
模板--HihoCoder --1297--扩展欧几里得
HihoCoder --1297--扩展欧几里得求最大公倍数与不定方程的解;LL gcd(LL a,LL b){ return b?gcd(b,a%b):a;}void extgcd(LL a,LL b,LL &x, LL &y){ if(b){ extgcd(b,a%b,y,x); y-=(a/b)*x; } ...原创 2020-05-06 16:17:27 · 206 阅读 · 0 评论 -
模板--HihoCoder--1296--约瑟夫问题
HihoCoder--1296--约瑟夫问题代码一:超时#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<cmath>using namespace std;typedef long long LL;LL n...原创 2020-05-06 16:14:39 · 159 阅读 · 0 评论 -
模板--欧拉函数模板
欧拉函数的值等于不超过m并且和m互为质数的个数;1.求欧拉函数值:时间复杂度O(sqrt(n));LL euler_deall(LL n){ LL res=n; for(int i=2;i*i<=n;i++){ if(n%i==0){ res=res/i*(i-1); for(;n%i==0;n/=i); } } if(n!=1) rea=res/n*(...原创 2020-05-06 11:55:41 · 193 阅读 · 0 评论 -
质数判断超详解--HihoCoder--1295--Eular质数筛法||Miller_Rabin算法
问题描述:前驱质数查找--统计前缀和类似https://blog.youkuaiyun.com/queque_heiya/article/details/105931133思路一:采取素数筛法,初始化求解,但是依旧暴力;代码如下:时间7953ms;#include<cstdio>#include<cstring>#include<algorithm>#i...原创 2020-05-05 20:13:54 · 218 阅读 · 0 评论 -
计蒜客--T1808--质数和
给定22个整数a,ba,b求出它们之间(包括a,ba,b)的所有质数的和。输入格式两个整数a,b\ (1\le a,b\le 10^5)a,b(1≤a,b≤105)。输出格式一个整数,表示范围内的质数和。输出时每行末尾的多余空格,不影响答案正确性样例输入999 10样例输出76110思路一:暴力判断+统计即可;---数据范围小,更适合;<50...原创 2020-05-05 13:25:01 · 265 阅读 · 0 评论 -
LibreOJ--143--miller-rabin质数测试
判定输入的数是不是质数。Input若干行,一行一个数xx。行数不超过105105。Output对于输入的每一行,如果xx是质数输出一行YY,否则输出一行NN。样例输入1269666623333样例输出NYNNY思路:模板:https://blog.youkuaiyun.com/queque_heiya/article/details/105928...原创 2020-05-05 10:52:03 · 331 阅读 · 0 评论 -
HihoCoder--1287--Miller-Rabin质数测试
题目不再多叙述:Miller-Rabin质数测试;思路:https://blog.youkuaiyun.com/queque_heiya/article/details/105928679https://blog.youkuaiyun.com/queque_heiya/article/details/105929064代码如下:#include<iostream>#include<c...原创 2020-05-05 10:47:07 · 206 阅读 · 0 评论 -
模板--快速幂运算||快速乘运算
快速幂运算模板:(1)时间复杂度:O(log(n));非递归调用;typedef long long ll;ll mod_pow(ll x,ll n,ll mod){ ll res=1; while(n>0){ if(1&n) res=res*x%mod; x=x*x%mod; n=n>>1; } return res;}(...原创 2020-05-05 10:44:22 · 353 阅读 · 0 评论 -
模板--Miller-Rabin素数测试算法
一.引用原因:在数据范围在LL类型之中,N_maxLL=1e18,即使在O(sqrt(n))的时间复杂度之内也不能够满足要求,这时候我们可以对其进行Miller-Rabin 素数测试,可以大概率测出其是否为素数,大部分情况下是正确的;二.理论基础:(1)费马小定理:当为质数,有,不过反过来不一定成立,也就是说,如果,互质,且,不能推出是质数;(2)二次探测:如...原创 2020-05-05 10:38:03 · 338 阅读 · 0 评论 -
HDU--1220--数学题目
Cowl is good at solving math problems. One day a friend asked him such a question: You are given a cube whose edge length is N, it is cut by the planes that was paralleled to its side planes into N * ...原创 2020-02-26 09:43:51 · 152 阅读 · 0 评论 -
HDU--1141--胡搞
Amtel has announced that it will release a 128-bit computer chip by 2010, a 256-bit computer by 2020, and so on, continuing its strategy of doubling the word-size every ten years. (Amtel released a 64...原创 2020-02-26 09:41:13 · 202 阅读 · 0 评论 -
HDU--1014--胡搞
Computer simulations often require random numbers. One way to generate pseudo-random numbers is via a function of the formseed(x+1) = [seed(x) + STEP] % MODwhere '%' is the modulus operator.Such a ...原创 2020-02-26 09:38:32 · 362 阅读 · 0 评论