BZOJ 1008 [HNOI2008] 越狱
来源:互联网 发布:vb winsock 编辑:程序博客网 时间:2024/04/30 01:35
Description
监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种。如果
相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱
Input
输入两个整数M,N.1<=M<=10^8,1<=N<=10^12
Output
可能越狱的状态数,模100003取余
Sample Input
2 3
Sample Output
6
HINT
6种状态为(000)(001)(011)(100)(110)(111)
Source
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
数论+快速幂~
求有相邻格子颜色相同的种类数,相当于是求总数减去没有格子相邻的种类数,总数是n^m,而没有格子相邻的种类数是n*(n-1)^(m-1),相当于除第一个格子外,每一个格子都与前一个格子颜色不同~
主要的是取模,每一个都要取,否则就会出错~
#include<cstdio>#define ll long long#define modd 100003ll n,m,k1,k2;ll mi(ll u,ll v){ll kkz=u%modd,now=1;while(v){if(v&1) now=(now*kkz%modd);kkz=kkz*kkz%modd;v>>=1;}return now;}int main(){scanf("%lld%lld",&m,&n);ll kkzv=(mi(m,n)-(m%modd*mi(m-1,n-1)%modd)+modd)%modd;printf("%lld\n",kkzv);return 0;}
1 0
- bzoj 1008: [HNOI2008]越狱
- [BZOJ 1008][HNOI2008]越狱
- [BZOJ 1008] [HNOI2008]越狱
- bzoj 1008: [HNOI2008]越狱
- bzoj 1008 [HNOI2008]越狱
- BZOJ 1008: [HNOI2008]越狱
- BZOJ 1008 [HNOI2008]越狱
- BZOJ 1008 [HNOI2008] 越狱
- BZOJ 1008 [HNOI2008] 越狱
- 【BZOJ 1008】[HNOI2008]越狱
- 【BZOJ】1008: [HNOI2008]越狱
- BZOJ 1008 [HNOI2008] 越狱
- BZOJ 1008 [HNOI2008]越狱
- BZOJ 1008: [HNOI2008]越狱
- BZOJ 1008: [HNOI2008]越狱
- 【bzoj 1008】越狱 HNOI2008
- BZOJ 1008 [HNOI2008]越狱
- BZOJ 1008: [HNOI2008]越狱 水
- 总结29
- 二叉树的遍历(加深自己的印象)
- Intellij利用Maven创建多Module的Java Web项目
- String(第一篇博客)
- LightOJ-1064-dp
- BZOJ 1008 [HNOI2008] 越狱
- 错题集
- Android之反射机制与JSON解析
- 逻辑门学习笔记
- Linux 实用工具 - Best Trace路由追踪测试Linux版使用
- spring预热(1)——注解
- 第九周 oj训练 大帆玩英雄联盟
- 欢迎使用CSDN-markdown编辑器
- Java初学者基础知识大集合