1 #include2 #include3 #include4 #include5view code#define rep(i,l,r) for(int i=l;i6
#define clr(a,x) memset(a,x,sizeof(a))
7#define inf 100003
8using
namespace
std;
9 typedef long
long
ll;10
ll n,m;
11int
main()
1222 (k*=k)%=inf;
23 (f*=f)%=inf;
24 n>>=1;25
}26 printf("
%lld
",(sum-ans+inf)%inf);
27return0;
28 }
time limit: 1 sec memory limit: 162 mb
submit: 5135 solved: 2226
[submit][status][discuss]
監獄有連續編號為1...n的n個房間,每個房間關押乙個犯人,有m種宗教,每個犯人可能信仰其中一種。如果相鄰房間的犯人的宗教相同,就可能發生越獄,求有多少種狀態可能發生越獄
輸入兩個整數m,n.1<=m<=10^8,1<=n<=10^12
可能越獄的狀態數,模100003取餘
2 36
6種狀態為(000)(001)(011)(100)(110)(111)
[submit][status][discuss]
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種選擇。對於第乙個人無論選什麼顏色都...
快速冪(例題 BZOJ1008)
在進行冪運算時乙個乙個乘需要耗費大量時間可以用一種類似二分的演算法來快速運算,這就是快速冪。比如求x n,n為偶數,x n x 2 n 2 n為奇數,x n x 2 n 2 x 不停地分下去,知道n為0時停止。include typedef long long ll using namespace ...