BZOJ-1008 越狱 数论快速幂
1008: [HNOI2008]越狱
Time Limit: 1 Sec Memory Limit: 162 MB
Submit: 6192 Solved: 2636
[Submit][Status][Discuss]
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)
感觉没什么好说的,找出公式后,快速幂求值,%%%之后即可
公式为:ans=M^N-M*(M-1)^(N-1)
代码:
#include<iostream>
#include<cstdio>
using namespace std;
int qpow(long long m,long long n,long long k)
{int b = 1;while (n > 0){if (n & 1)b = (b*m)%k;n = n >> 1 ;m = (m*m)%k;}return b;
} int main()
{long long n=0,m=0;scanf("%lld%lld",&m,&n);long long ans=1;ans=(qpow(m,n,100003)-m*qpow(m-1,n-1,100003)%100003+100003)%100003;printf("%lld",ans);return 0;
}
转载于:https://www.cnblogs.com/DaD3zZ-Beyonder/p/5346247.html
BZOJ-1008 越狱 数论快速幂相关推荐
- 【codevs1851】越狱,快速幂数学
越狱 2008年湖南省队选拔赛 时间限制: 10 s 空间限制: 128000 KB 题目等级 : 大师 Master 题解 题目描述 Description 监狱有连续编号为1-N的N个房间,每个房 ...
- 第二十七章 数论——快速幂与逆元
第二十七章 快速幂与扩展欧几里德算法 一.快速幂 1.使用场景 2.算法思路 (1)二进制优化思想 (2)模运算法则 3.代码实现 (1)问题 (2)代码 二.快速幂求逆元 1.什么是逆元? (1)同 ...
- bzoj 1409 Password 矩阵快速幂+欧拉函数
可以发现,该数组的mi就是斐波那契数列 所以要矩阵快速幂搞出第n位 但是斐波那契数列上涨的很快,这就需要欧拉定理了 p^phi(q)%q=1(gcd(p,q)==1) p是素数,所以可以用 然后需要5 ...
- 数论-快速幂、矩阵快速幂、慢速乘
文章目录 快速幂 矩阵快速幂 慢速乘 例题 HDU-2817 HDU-3117 XUJC-1395 快速幂 首先幂运算 a n a^n an就是 n n n个 a a a相乘,我们可以直接调用库函数 ...
- P3197 [HNOI2008]越狱(快速幂)
题目描述 监狱有连续编号为 1-N1-N1-N 的 NNN 个房间,每个房间关押一个犯人,有 MMM 种宗教,每个犯人可能信仰其中一种.如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能 ...
- P2842-LJJ算数【数论,快速幂】
正题 题目链接:https://www.luogu.org/problemnew/show/P2842 题目大意 求 a#b=aaaa-a(a\#b=a^{a^{a^{a^{-^a}}}}(a#b=a ...
- 【bzoj2751】[HAOI2012]容易题(easy) 数论-快速幂
[bzoj2751][HAOI2012]容易题(easy) 先考虑k=0的情况 那么第一个元素可能为[1,n] 如果序列长度为m-1时的答案是ans[m-1] 那么合并得 然后同理答案就是 k很小 而 ...
- 数学--数论--快速幂--最大公约数--位运算模板
ACM常用模板合集 //位运算求解最大公约数 long long gcd(long long a,long long b) { if(a<b) return gcd(b,a);if(b==0) ...
- BZOJ 2242: [SDOI2011]计算器 [快速幂 BSGS]
2242: [SDOI2011]计算器 题意:求\(a^b \mod p,\ ax \equiv b \mod p,\ a^x \equiv b \mod p\),p是质数 这种裸题我竟然WA了好多次 ...
最新文章
- LeetCode刷题-6
- python素数判断代码_Python 判断101-200之间有多少个素数,并输出所有素数
- 2019 年,开发者如何占领快应用技术风向的高地?
- 虚拟机搭建Hadoop集群学习笔记(1)
- STVP烧录失败提示“cannot communicate with tool”或者“The device is protected”
- 纸张的规格A3.A4.A5.A6纸的尺寸大小
- foxmail连接163邮箱服务器,消除Foxmail无法登录163邮箱顽疾
- UWB定位与蓝牙定位的优缺点分析
- discuz论坛网站更换域名的方法及步骤
- 软件逆向工程学习(一)
- 实习日志(总结一些前端知识)
- Adobe Acrobat DC 设置保存上次浏览位置
- Android所有View通用下拉刷新上拉加载控件
- Win10 网络正常 网络图标变成地球 解决方法
- 【视觉定位UV】Mark点配置文件格式说明
- Java菜鸟教程系列 学习笔记总结 面向对象篇(1)
- esp32之wifi状态机
- 园林景观cad_极轴对象跟踪对象捕捉和dyn - AutoCAD 园林景观全面教程 初级篇 - 园林景观设计学院...
- X射线、CT、MRI、PET总结
- 基于综合需求响应和奖惩阶梯型碳交易的综合能源系统优化调度 MATLAB复现