
快速幂
文章平均质量分 92
Dave_L
这个作者很懒,什么都没留下…
展开
-
51nod1046
1046A^B Mod C基准时间限制:1 秒 空间限制:131072 KB 分值:0难度:基础题给出3个正整数A B C,求A^B Mod C。例如,3 5 8,3^5 Mod 8 = 3。Input3个正整数A B C,中间用空格分隔。(1 Output输出计算结果Input示例3 5 8Outpu原创 2017-07-18 20:48:46 · 250 阅读 · 0 评论 -
牛客挑战赛11 B 杨辉三角应用 预处理逆元+阶乘
B 思路: (x+y)^n的展开式中的各项系数依次对应杨辉三角的第(n+1)行中的每一项。杨辉三角第n行的m个数可表示为 C(n-1,m-1)。 那么本题相当于(ax+by)^n 展开式各项系数。 计算C(n-1,m-1) * a^(n-m) * b ^ m 即可。 Code:#include <bits/stdc++.h>#define LL long long us...原创 2018-08-08 09:25:32 · 257 阅读 · 0 评论 -
8 - 7 训练赛- ACM-ICPC 2015 Changchun Preliminary Contest A优先队列G线段树区间最值H排序二叉树J大组合数取模卢卡斯+CRT
A 题意:邀请k个人来,m次开门操作,每次操作有x,y表示x个人来之后开门,这次开门能进来y个人。礼物最贵的先进,如果一样先来的先进。如果m次开门操作后还有没进来的,就都进来。给q个询问,第x个进来的人是谁。 思路:优先队列维护下。 Code:#include <bits/stdc++.h>#pragma comment(linker, “/STACK:1024000000...原创 2018-08-07 21:32:01 · 329 阅读 · 0 评论 -
矩阵快速幂专题 HDU1757 HDU1575 HDU2604 HDU2256 CF185A HDU2276 HDU2842
HDU1757 递推式给了,入门裸题。 Code:#include &amp;amp;amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;amp;amp;gt;#pragma comment(linker, “/STACK:1024000000,1024000000”)#define INF 0x3f3f3f3f#define LL long longusing namespace std;LL k ;int m ;int原创 2018-08-12 21:25:50 · 306 阅读 · 0 评论 -
7-28 ACM训练联盟周赛解题报告 C树上dp ,F容斥原理 J组合数学公式 K贪心(曼哈顿距离和)
F: 题意: 给n个数,问1-m里面有多少个是这n个数任意个的倍数。 思路:由容斥原理我们知道结果是,m范围内:一个数的倍数 - 两个数最小公倍数的倍数+3个数。。。 总之就是奇数个的时候是加号,偶数个的时候是减号。 然后n只有15个,可以用二进制表示其用到哪些个数。 每次用奇数个时结果加上,偶数个时结果减去,用公式写就是: Σ(1&lt;=i&lt;=n) m / A[i] - Σ...原创 2018-07-28 18:12:16 · 408 阅读 · 0 评论 -
暑期集训-German Collegiate Programming Contest 2015 解题报告
B. Bounty Hunter II 题目链接:https://nanti.jisuanke.com/t/18486 题意:给定几个点及其边,问派几个人可以遍历这些点,前提是每个点只能一个人走。 更为清晰的说法是题解中的: Given a DAG with N nodes find the minimum number of vertex-disjoint paths ...原创 2018-07-13 13:32:45 · 535 阅读 · 0 评论 -
米勒拉宾素数测试 - >大素数判断 + 大整数的因数分解 + 例题 POJ1811
费马小定理: a为整数,n是素数,且a,n互质,则有a^(n-1)≡1(mod n) ,即:a^(n-1)模n得1。 快速判定一个数是否为素数的方法: 如果存在一个整数a,使得a^(n-1)≡1(mod n) ,则称n为基于a的伪素数,当有多个满足关系的a时,则n为素数的概率趋向于1。所以取多个a测试一下即可。Code:LL mult( LL a , LL b , LL c ) { ...原创 2018-07-12 19:51:35 · 816 阅读 · 0 评论 -
练习赛3 B组合 C multiset D set G 计算几何矩形面积交/并 H模拟 I 组合数公式+逆元 J搜索 K添加限制条件的最短路
B. 题目链接:https://hihocoder.com/problemset/problem/1509 题意:给定一个长度为 n 的非负整数序列 a[1..n] 你需要求有多少个非负整数 S 满足以下两个条件: (1).0 ≤ S &amp;amp;amp;lt; 260 (2).对于所有 1 ≤ i &amp;amp;amp;lt; n ,有 (a[i] xor S) ≤ (a[i+1] xor S)思路:遍历每一对,找每一...原创 2018-07-18 17:41:48 · 374 阅读 · 0 评论 -
数学专题快速幂+费马小定理
题目: 思路:一个数字重复k次,被5整除结尾必定是0或者5,那么总的删除方案就是等比数列求和。 2^i * ( 1 - 2 ^ n*k ) / ( 1 - 2 ^ n ) 除法求逆元用费马小定理。 Code:#include <bits/stdc++.h>#define LL long longusing namespace std;const int AX = 1...原创 2018-07-09 19:33:43 · 377 阅读 · 0 评论 -
搜索专题 - 自幂数
思路:因为19位情况太多,要暴力枚举每位肯定会TE,所以为了优化时间复杂度,可以枚举n位数字中 每个数字出现的次数,记录下来,每次枚举到n位就判断所求的和是否满足枚举的情况。我先存起来每个数字的n次方,方便直接使用。Code:#include &lt;bits/stdc++.h&gt;#define LL unsigned long long using namespace ...原创 2018-06-04 18:49:43 · 915 阅读 · 5 评论 -
51nod 1113 矩阵快速幂 模板题
1113 矩阵快速幂基准时间限制:3 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注给出一个N * N的矩阵,其中的元素均为正整数。求这个矩阵的M次方。由于M次方的计算结果太大,只需要输出每个元素Mod (10^9 + 7)的结果。Input第1行:2个原创 2018-04-07 19:36:58 · 234 阅读 · 0 评论 -
51nod1632 B君的连通
1632 B君的连通基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 收藏 关注B国拥有n个城市,其交通系统呈树状结构,即任意两个城市存在且仅存在一条交通线将其连接。A国是B国的敌国企图秘密发射导弹打击B国的交通线,现假设每条交通线都有50%的概率被炸毁,B国希望知道在被炸毁之后,剩下联通块的个数原创 2018-02-07 17:17:20 · 294 阅读 · 0 评论 -
矩阵乘法 与 矩阵快速幂详解 以51NOD1242 斐波那契数列的第N项为例
首先介绍矩阵乘法的本质:小明今天要做饭,消耗2斤肉,1斤蔬菜。肉每斤20元,蔬菜每斤5元,则一共需多少花费?这个问题的答案很简单:我们用向量相乘的方法写出来:如果小明第二天有另一种做饭的方法,需要消耗1斤肉,4斤蔬菜,那么这两种方法的花费各是多少呢?我们显然需要另算这第二种方法的花费。把这个做饭方式写在第二个矩阵(向量是宽度或长度为1的矩阵)里:&lt;原创 2017-08-08 18:16:35 · 996 阅读 · 0 评论 -
Interesting Fibonacci hdu2814 斐波那契数列循环节
Interesting FibonacciTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1230 Accepted Submission(s): 306Problem DescriptionIn mathem原创 2018-01-06 11:42:05 · 359 阅读 · 0 评论 -
51nod1013 3的幂的和 (矩阵快速幂 或 逆元+快速幂)
1013 3的幂的和基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 收藏 关注求:3^0 + 3^1 +...+ 3^(N) mod 1000000007Input输入一个数N(0 Output输出:计算结果Input示例3Output示例40#include #def原创 2017-09-30 18:35:30 · 391 阅读 · 0 评论 -
数论之Lucas定理求大组合数取模的应用常见题型汇总
Lucas定理是用来求 c(n,m) mod p,p为素数的值。 对于C(n, m) mod p。这里的n,m,p(p为素数)都很大的情况。就不能再用C(n, m) = C(n - 1,m) + C(n - 1, m - 1)的公式递推了。 应用:大组合数求模 表达式C(n,m)%p=C(n/p,m/p)*C(n%p,m%p)%p 因为p为素数,所以这类题都可以用费马小定理计算逆元。当然...原创 2018-08-08 12:17:17 · 575 阅读 · 0 评论