bzoj1008 數學題 快速冪

2022-03-30 13:04:13 字數 870 閱讀 2951

1 #include2 #include3 #include4 #include5

#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 }

view code

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 ...