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

题解:洛谷 P3197 [HNOI2008] 越狱

【题目来源】

洛谷:P3197 [HNOI2008] 越狱 - 洛谷

【题目描述】

监狱有 \(n\) 个房间,每个房间关押一个犯人,有 \(m\) 种宗教,每个犯人会信仰其中一种。如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱。

答案对 \(100,003\) 取模。

【输入】

输入只有一行两个整数,分别代表宗教数 \(m\) 和房间数 \(n\)

【输出】

输出一行一个整数代表答案。

【输入样例】

2 3

【输出样例】

6

【解题思路】

image

【算法标签】

《洛谷 P3197 越狱》 #数学# #组合数学# #容斥原理# #各省省选# #2008# #湖南# #O2优化#

【代码详解】

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int mod = 100003;
int m, n;// 快速幂:计算 a^b mod p
int qmi(int a, int b, int p)
{int mul = 1;while (b){if (b & 1) mul = mul * a % p;  // 如果b的二进制最后一位是1a = a * a % p;  // 平方b >>= 1;  // 右移一位}return mul;
}signed main()
{cin >> m >> n;// 计算m^n mod modint a = qmi(m, n, mod);// 计算m * (m-1)^(n-1) mod modint b = (m * qmi(m - 1, n - 1, mod)) % mod;// 计算(a - b + mod) mod mod,避免负数int ans = (a - b + mod) % mod;cout << ans << endl;return 0;
}

【运行结果】

2 3
6
http://www.jsqmd.com/news/397160/

相关文章:

  • LeetCode761:特殊的二进制字符串
  • 题解:洛谷 P4549 【模板】裴蜀定理
  • 从传统编程到AI协同开发的职业转型
  • 数据仓库入门指南:从零开始构建大数据存储系统
  • API网关设计:管理AI API生命周期的实战技巧!
  • r1打卡
  • AI应用架构师从0到1:AI虚拟培训系统的需求分析与原型设计
  • flex与bison学习之安装环境cygwin
  • 题解:洛谷 P1082 [NOIP 2012 提高组] 同余方程
  • 探秘提示工程架构师如何用提示工程优化环节
  • 题解:洛谷 P2303 [SDOI2012] Longge 的问题
  • 题解:洛谷 P5091 【模板】扩展欧拉定理
  • 题解:洛谷 P2568 GCD
  • 模拟退火算法
  • 题解:洛谷 P3861 拆分
  • GESP2024年3月认证C++二级( 第三部分编程题(1) 乘法问题)
  • Java synchronized关键字详解:从入门到原理
  • 题解:洛谷 P1495 【模板】中国剩余定理(CRT)/ 曹冲养猪
  • CSP-J2025游记
  • 题解:洛谷 P4942 小凯的数字
  • P3143 [USACO16OPEN] Diamond Collector S
  • 蛇和锯子的羁绊
  • 题解:洛谷 P2704 [NOI2001] 炮兵阵地
  • 北京字画回收|上门服务,当场现金结算,丰宝斋让你变现无忧 - 品牌排行榜单
  • 题解:洛谷 P1879 [USACO06NOV] Corn Fields G
  • Lambda架构在智能家居大数据处理中的实践
  • 题解:洛谷 P2831 [NOIP 2016 提高组] 愤怒的小鸟
  • 题解:洛谷 P1450 [HAOI2008] 硬币购物
  • 提示工程架构师晋升难?因为你没搞懂这套「成长地图」
  • 大数据领域数据工程的数据迁移工具