当前位置: 首页 > news >正文

越狱(快速幂C++)

题目

监狱有连续编号为 11 到 n 的 n 个房间,每个房间关押一个犯人。

有 m 种宗教,每个犯人可能信仰其中一种。

不存在没有信仰的犯人。

如果相邻房间的犯人信仰的宗教相同,就可能发生越狱。

求有多少种状态可能发生越狱。

输入格式

共一行,包含两个整数 m和 n。

输出格式

可能越狱的状态数,对 100003100003 取余。

数据范围

1≤m≤108
1≤n≤1012

输入样例:
2 3
输出样例:
6
样例解释

所有可能的 66 种状态为:(000)(001)(011)(100)(110)(111)(000)(001)(011)(100)(110)(111)。

代码

#include<iostream>using namespace std;typedef long long LL;const int mod = 100003;int qmi(int a, LL b)
{LL res = 1;while(b){if(b & 1) res = res * a % mod;b >>= 1;a = (LL) a * a % mod;}return res;
}int main()
{int m;LL n;cin >> m >> n;//                                  +mod防止出现负数情况 cout << (qmi(m, n) - (LL)m * qmi(m - 1, n - 1) % mod + mod) % mod<< endl;//       总分配方案数   -  不会发生越狱的方案数//不会发生越狱时,第一个人随便分配,第二个人信仰为m - 1, 第三个人信仰也为 m - 1 return 0;
}

http://www.lryc.cn/news/172695.html

相关文章:

  • 电脑入门:怎么进入路由器设置
  • Vue3大屏项目实现数字跳动的效果
  • MATLAB打开历史命令窗口并保持
  • 等差数列和等比数列 常用公式
  • 基于SpringBoot+Vue的MOBA类游戏攻略分享平台
  • 基于异常上线场景的实时拦截与问题分发策略
  • MySQL常见面试题(一)
  • webpack:详解entry和output一些重要API的使用
  • Spring后处理器-BeanPostProcessor
  • 每日一题~修剪二叉树
  • 图像形态学操作(连通性、腐蚀、膨胀)
  • 中国这么多 Java 开发者,应该诞生出生态级应用开发框架
  • 仿猫扑盒子引流神器试看神马视频-红包打卡签到领金
  • WhatsApp自动营销软件是真实的吗?对做外贸有帮助吗?
  • 抖音短视频矩阵系统搭建
  • Chinese-LLaMA-AIpaca
  • IP归属地应用的几个主要特点
  • 通过解读yolov5_gpu_optimization学习如何使用onnx_surgon
  • 图像复原与重建,解决噪声的几种空间域复原方法(数字图像处理概念 P4)
  • Android 启动优化案例:WebView非预期初始化排查
  • 20230919后台面经整理
  • 画一个时钟(html+css+js)
  • 红 黑 树
  • 掷骰子的多线程应用程序1(复现《Qt C++6.0》)
  • 【vue2第十八章】VueRouter 路由嵌套 与 keep-alive缓存组件(activated,deactivated)
  • 如何确保亚马逊、速卖通等平台测评补单的环境稳定性和安全性?
  • echarts图表 实现高度按照 内容撑起来或者超出部分滚动展示效果
  • 【论文阅读】检索增强发展历程及相关文章总结
  • 【漏洞复现系列】二、weblogic-cve_2020_2883(RCE/反序列化)
  • 算法通关村-----LRU的设计与实现