数论
lengxuenong
这个作者很懒,什么都没留下…
展开
-
牛客-小l的数列-dp+素数
https://ac.now链接:https://ac.nowcoder.com/acm/problem/218035来源:牛客网2.对于任意的i(1≤i<m)i (1 \leq i <m)i(1≤i<m),满足 gcd(bi,bi+1)>1gcd(b_i,b_{i+1})>1gcd(bi,bi+1)>1。其中,gcd(x,y)gcd(x,y)gcd(x,y)为xxx和yyy的最大公因数,即最大的ddd,满足:d∣xd|xd∣x且d∣yd|yd∣y。...原创 2021-03-08 09:04:40 · 184 阅读 · 0 评论 -
P6583 回首过去--整数分块
题目来源:P6583 回首过去.根据样例分析,可以xy\frac xyyx是有限小数的条件是分母只能包含因子2和5,直觉证明,整数在进行除法的过程中,如果需要去补0,则相当于*10,而10只包含因子2和5,所以出现其他因子就不是有限循环小数。40分 n*n暴力不解释o(n)符合条件的xy\frac xyyx可以分解为XY2p5qX\frac{XY}{2^p5^qX}2p5qXXY其中KaTeX parse error: Expected '}', got 'EOF' at end of in原创 2020-06-06 20:26:51 · 229 阅读 · 0 评论 -
整除分块
例题1求 ∑1nni ,n<=1012.\ \sum_1^n \frac{n}{i}\,,n<=10^{12}. ∑1nin,n<=1012.题目链接.数据范围小跑o(n)当然没问题,数据范围这么大就要另想办法。打表观察下,设n=201 2 3 4 5 6 7 8 9 10 11 12 13…2020 10 6 5 4 3 2 2 2 2 1 1 1 1我们发现n/i的值有某些段是重复的原创 2020-06-06 15:36:54 · 198 阅读 · 0 评论 -
CF1307C Cow and Message:数学+前缀和
题目来源: CF1307C Cow and Message.题目大意:找出子串在原串中序号成等差数列的最大值。要成等差数列,长度1个或2个很容易,3个就麻烦啦,所以最大值只可能出现在长度为1或2的情况。一开始想错了,以为只找出个数最多的两个即可,相乘。例如aabbb,没有注意顺序问题,写错了。所有长度为2的等差数列只有2626种。如果长度一个字符在位置p上,那么他只能与后面的的字符形成等差...原创 2020-03-01 10:28:43 · 333 阅读 · 0 评论 -
AT5661 [AGC040C] Neither AB nor BA:数论,组合数学
题目来源: AT5661 [AGC040C] Neither AB nor BA.参考题解: Tea’s blogLXD让我们做这个题目,当然显示手玩啦,找删的掉得太多,所以找删不掉得。n=2:AB BA ,n=4 前面补,后面补等等写了写式子,发现在删不掉得基础上补了,前面得又被删掉了,无头绪,抄题解啦。题解很巧妙,处理AB的在奇偶位置上的个数关系。成功的将题目转为数学题!我们可以发现,...原创 2020-02-13 17:57:43 · 291 阅读 · 0 评论 -
矩阵快速幂模板
试试代码片转载 2016-09-13 19:22:21 · 229 阅读 · 0 评论 -
逆元
逆元详解1.扩展欧几里得给定模数m,求a的逆相当于求解ax=1(mod m) 这个方程可以转化为ax-my=1 然后套用求二元一次方程的方法,用扩展欧几里得算法求得一组x0,y0和gcd检查gcd是否为1 gcd不为1则说明逆元不存在若为1,则调整x0到0~m-1的范围中即可PS:这种算法效率较高,常数较小,时间复杂度为O(ln n) [cpp]vi转载 2016-08-24 17:25:09 · 406 阅读 · 0 评论 -
codevs3990——中国余数定理:一元模线型方程组
转载:这是抄的,但是抄过后原网址的位置找不到了,对不起原作者……中国剩余定理 在《孙子算经》中有这样一个问题:“今有物不知其数,三三数之剩二(除以3余2),五五数之剩三(除以5余3),七七数之剩二(除以7余2),问物几何?”这个问题称为“孙子问题”,该问题的一般解法国际上称为“中国剩余定理”。具体解法分三步:00001. 1. 找出三个数:从3和5的公倍数中找出被原创 2017-10-14 10:02:02 · 465 阅读 · 0 评论 -
numberqb200707-2-3
https://www.luogu.org/problemnew/show/T14200题目描述LYK定义了一个新的计算。具体地,一开始它有两个数字a和b。每一步,它可以将b增加1,或者将a乘上b。也就是说(a,b)经过一次操作后可以变成(a,b+1)或者(a*b,b)。再经过一次操作可以变成(a,b+2)或者(a*(b+1),b+1)或者(a*b,b+1)或者(a*b*b,b)。接下来都类...原创 2018-10-25 16:02:22 · 175 阅读 · 0 评论