数论
文章平均质量分 94
WarrenChou_
当你的才华支撑不起你的野心时,只有静下心来好好学习!
展开
-
常见数论问题集合
1. 求最大公约数欧几里得算法(辗转相除法)int gcd(int a,int b){ return b?gcd(b,a%b):a;}扩展欧几里得算法int extgcd(int a,int b,int &x,int &y){ int d=a; if(b){ d=extgcd(b,a%b,y,x); y-=(a/b)*x; ...原创 2019-10-13 16:51:50 · 1517 阅读 · 0 评论 -
欧拉筛法
寻找素数:欧拉筛法时间复杂度O(n) (目前发现复杂度最小级别的)const int maxn=100000001;int prime[maxn]; //就是个素数表bool sf[maxn]; //判断这个数是不是素数,sf[i]中的i是从1到maxn的数void sushu(){ //核心 欧拉筛代码 int num=0; ...原创 2019-07-05 09:00:52 · 1839 阅读 · 0 评论 -
分数取模(快速取模法+小费马定理)
这周打了牛客竞赛周赛,结果在第一道题就卡死了(呜呜呜)这是原题牛客练习赛49拿到题后,本蒟蒻想着不就是一道排序题吗,就直接写了一个快速排序输出,结果直接WA了。百思不得其解,这时后台发来了一个广播消息:提示:如果不能整除,输出分数取模后的结果。what???分数取模,虽然刚刚学过密码学的时候接触过,但不知道算法怎么写啊,果断地去百度了一下,找到了小费马定理:a^p-1 mod p = 1 ...原创 2019-07-09 13:14:35 · 18426 阅读 · 2 评论 -
二分答案/查找
1.什么是二分答案二分答案就是通过对所有可能的答案区间进行折半查找,不断缩减范围,最终确定答案的方法。2.二分条件有上下界区间有单调性我们假设整个序列具有单调性,且一个数x为可行解,那么一般的,所有的 x’(x’<x) 都是可行解。并且,如果有一个数y是非法解,那么一般的,所有的 y’(y’>y) 都是非法解。考虑所有可行解,我们肯定是要从这些可行解中找到一个最好的作为...原创 2019-09-22 17:18:26 · 484 阅读 · 0 评论