【BestCoder#8】【1002】【Reading comprehension】【题解】【数列推通项】
来源:互联网 发布:直播行业现状知乎 编辑:程序博客网 时间:2024/05/29 18:14
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=4990
题意:
数列a_n={2a_{n-1} if n%2==0
{2a_{n-1}+1 if n%2==1
a_0=0
求an%m
考虑合并相邻两个操作,即构造数列b_n=a_2n
则 bn=4b_{n-1}+2
=>bn+2/3=4(b_{n-1}+2/3)
=>令cn=bn+2/3
=>cn=8/3*4^(n-1)
则ans=(8*4^(n-1)-2)/3 (以上的n为原来的n整除2)
若原来的n为奇数则ans=2*ans+1
式子推完,然后发现3和m可能不互质……逆元没法算……
yy一下?……失败
度娘一下?……失败
请教神犇?……失败
最后就没过……
看了别人代码发现不互质时暴力扩大模数范围求逆元直接除就好了……
当然是数小的时候,数大了现在还不会……
标算是矩乘233
Code:
#include <cstdio>#include<iostream>#include <cstring>#include <cmath>#include <algorithm>#include<vector>using namespace std;typedef long long LL;LL n,m;LL power(LL x,LL k,LL MOD){LL ans=1;for(;k;k>>=1){if(k&1)ans=(ans*x)%MOD;x=(x*x)%MOD;}return ans%MOD;}void exgcd(LL a,LL b,LL &x,LL &y){if(!b){x=1;y=0;}else{exgcd(b,a%b,x,y);LL t=x;x=y;y=t-a/b*y;}}LL inv(LL a,LL MOD){LL x,y;exgcd(a,MOD,x,y);while(x<0)x+=MOD;return x%MOD;}int main(){while(cin>>n>>m){LL cn,bn;if(n==1){cout<<1%m<<endl;continue;}cn=power(4,n/2-1,m*3)*8%(3*m);bn=cn-2;while(bn<0)bn+=(m*3);bn/=3;if(n&1)bn=(2*bn+1)%(3*m);cout<<bn%m<<endl;}return 0;}
0 0
- 【BestCoder#8】【1002】【Reading comprehension】【题解】【数列推通项】
- hdu 4990 Reading comprehension(BestCoder Round #8 1002)
- BestCoder Round #8 1002 Reading comprehension[矩阵幂求解递推值]
- Reading comprehension (BestCoder Round #8) (hdoj 4990)
- BestCoder Round #8 B题 Reading comprehension
- Bestcoder#8 && HDU4990 Reading comprehension(规律)
- hdu 4990 Reading comprehension 矩阵快速幂or数论 bestcoder round 8b
- SAT阅读练习题:Reading Comprehension Test 8
- HDU 4990 / BC 8B Reading comprehension
- hdu 4990 Reading comprehension
- hdu 4990 Reading comprehension
- hdu 4990 Reading comprehension
- HDU 4990 Reading comprehension
- hdu4990 Reading comprehension
- HDU 4990 Reading comprehension
- HDOJ 4990 Reading comprehension
- HDU 4990 Reading comprehension
- hdu 4990 Reading comprehension
- 在windows下安装Scrapy,并简单抓取网页
- iOS中assign、copy 、retain等关键字的含义
- Emacs的Tab键
- git常用命令
- 操作系统篇
- 【BestCoder#8】【1002】【Reading comprehension】【题解】【数列推通项】
- Sympy符号计算库
- 动态规划算法
- 数学之美笔记1
- 计算机网络篇
- java操作hbase
- Yale开放课程博弈论11
- poj1094(拓扑排序应用)
- iOS ALAssetsLibrary获取所有图片