監獄有連續編號為 11 到 nn 的 nn 個房間,每個房間關押乙個犯人。
有 mm 種宗教,每個犯人可能信仰其中一種。
如果相鄰房間的犯人信仰的宗教相同,就可能發生越獄。
求有多少種狀態可能發生越獄。
輸入格式
共一行,包含兩個整數 mm 和 nn。
輸出格式
可能越獄的狀態數,對 100003100003 取餘。
資料範圍
1≤m≤1081≤m≤108,
1≤n≤10121≤n≤1012
輸入樣例:
2 3輸出樣例:
6樣例解釋
所有可能的 66 種狀態為:(000)(001)(011)(100)(110)(111)(000)(001)(011)(100)(110)(111)。
思路:拿一共的可能減去不越獄的可能
一共可能為每乙個人有m種選擇,不越獄的話,第乙個人有m中選擇,後面的人有m-1種選擇
#include
#include
#include
#include
using
namespace std;
const
int mod =
100003
;typedef
long
long ll;
intqmi
(int a, ll k)
return res;
}int
main()
越獄 快速冪取模
監獄有連續編號為1.n的n個房間,每個房間關押乙個犯人,有m種宗教,每個犯人可能信仰其中一種。如果 相鄰房間的犯人的宗教相同,就可能發生越獄,求有多少種狀態可能發生越獄。2 36 6種狀態為 000 001 011 100 110 111 思路 所有的可能的情況數為 m n,不發生越獄的情況數為 m...
BZOJ 1008 越獄(快速冪)
description監獄有連續編號為1 n的n個房間,每個房間關押乙個犯人,有m種宗教,每個犯人可能信仰其中一種。如果相鄰房間的犯人的宗教相同,就可能發生越獄,求有多少種狀態可能發生越獄 input 輸入兩個整數m,n.1 m 10 8,1 n 10 12 output 可能越獄的狀態數,模100...
BZOJ1008 越獄 (快速冪)
給出序列長度n和顏色數m,求出存在相鄰元素顏色相同的染色方案數。正難反易 因為正向解決這個問題比較困難,所以我們可以將問題轉化為求出不存在相鄰元素顏色相同的染色方案數,然後用所有排列的情況減去。對於序列中的每乙個人,只要和前乙個人的顏色不同就可以了,所以共有m 1種選擇。對於第乙個人無論選什麼顏色都...