
快速幂
threeh20
暑假有半个月整个人像死了一样,所以更加明白生命的可贵
展开
-
hdu 1575 Tr A
Tr ATime Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5238 Accepted Submission(s): 3927Problem DescriptionA为一个方阵,则Tr A表示A的迹(就是主对角线上原创 2017-07-24 20:13:24 · 249 阅读 · 0 评论 -
2018 Multi-University Training Contest 7 hdu6395 Sequence(矩阵快速幂+二分划块)
http://acm.hdu.edu.cn/showproblem.php?pid=6395 看公式我们可以发现对于一个n,可以分成若干块,这若干块的p/n向下取整都是相同的。那么就可以矩阵快速幂了。比如100 可以分成100-51 50-34 33-26 。。。。。。可以用二分来划分块。 #include<bits/stdc++.h>using names...原创 2018-08-13 18:21:58 · 170 阅读 · 0 评论 -
hdu 5451 Best Solver(循环节+共轭构造)
http://acm.hdu.edu.cn/showproblem.php?pid=5451 如果指数不是那么大的话,就和那个SO EAST那道题一样的用矩阵快速幂来做但是指数是2的2的31次方那么大,底数还是个无理数, 降幂不能看了别人的优秀代码 ,发现是寻找循环节.因为模数很小.对于每一个模数,都有自己的循环节.向上取整的递推公式是 Cn=10*Cn-1 -Cn-2 ...原创 2018-07-31 16:22:35 · 277 阅读 · 0 评论 -
hdu 4565 So Easy!(共轭构造+矩阵快速幂)
http://acm.hdu.edu.cn/showproblem.php?pid=4565我们构造这么一个东西Cn=(a+sqrt(b))^n+(a-sqrt(b))^n因为是共轭的,所以Cn是一个整数,且因为a*a>b的所以后面那个式子就是一个小于1的数,那么Cn为我们所求.将 Cn乘上(a+sqrt(b))+(a-sqrt(b))可以得到 2*a*Cn=Cn+1...原创 2018-07-31 15:57:02 · 185 阅读 · 0 评论 -
POJ 3613 Cow Relays (floyd+快速幂)
http://poj.org/problem?id=3613我们都知道如果单纯的求从s点到e点恰好经过k条边的路径数量。就直接将01表进行k次幂即可。那么如果是求最短路径长度呢。那就是把邻接矩阵进行k次floyd即可。具体解释比较复杂。记住即可。k最大有1000000.所以快速幂一下,只要将矩阵相乘那一段,改成floyd即可真是奇妙。#include<iostream>#includ...原创 2018-07-11 11:01:20 · 155 阅读 · 0 评论 -
FZU 1627 Revival's road
http://acm.fzu.edu.cn/problem.php?pid=1627给一张图,每走一步为1s,求正好在k秒到达终点的走的方法数。以前做过类似的题目,利用矩阵相乘的知识可得到,将地图转换为01矩阵,该矩阵的x次方即为在x秒时(或者是走过x个点)从i到j的方法数。所以这题用矩阵快速幂即可。#include#inc原创 2017-12-03 19:51:03 · 249 阅读 · 0 评论 -
hdu 5950 Recursive sequence
http://acm.split.hdu.edu.cn/showproblem.php?pid=5950#include #include #include #include #include #include #include using namespace std; struct js{ long long int原创 2017-10-14 10:39:38 · 222 阅读 · 0 评论 -
hdu 2197 本原串
本原串Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1471 Accepted Submission(s): 500Problem Description由0和1组成的串中,不能表示为由几个相同的较小的串连接原创 2017-07-26 19:30:13 · 252 阅读 · 0 评论 -
hdu 2604 Queuing
QueuingTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5862 Accepted Submission(s): 2559Problem DescriptionQueues and Priority Q原创 2017-07-26 19:22:49 · 235 阅读 · 0 评论 -
hdu 1061 Rightmost Digit
Rightmost DigitTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 57040 Accepted Submission(s): 21561Problem DescriptionGiven a posi原创 2017-07-26 19:17:07 · 172 阅读 · 0 评论 -
hdu 2157 How many ways??
How many ways??Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3438 Accepted Submission(s): 1324Problem Description春天到了, HDU校园里开满原创 2017-07-26 19:15:32 · 261 阅读 · 0 评论 -
zoj 3497 Mistwald(矩阵快速幂)
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3497. 按照规则处理一下建图即可,然后就是一个最大25*25的矩阵快速幂了 #include<bits/stdc++.h>using namespace std;struct node{ int ma[33][33];};i...原创 2018-10-21 13:02:39 · 217 阅读 · 0 评论