描述 description
做了heoi2012的趙州橋(bridge)之後,liouzhou_101就感到極其的不爽,首先那題題目敘述巨渣,然後做法極坑。
不過那題是一道和染色有關的問題,於是在此同時也啟發liouzhou_101想到了這樣乙個簡單的問題:
在一串未打結的項鍊上(意思就是說項鍊的左端和右端不相連),有n顆珠子,你有m種顏色,然後就問你有多少種方法將每一顆珠子都染上顏色,使得任意兩顆相鄰的珠子的顏色不同。
liouzhou_101這種傻×自然不會做了,於是來向你請教…
當然,由於liouzhou_101的腦子構造極其簡單,你不要想太多,請不要考慮polya之類的本質相同,否則的話僅憑liouzhou_101的理解能力是不能理解的
輸入格式 inputformat
輸入只有一行,三個正整數n、m和p,之間以乙個空格隔開。
輸出格式 outputformat
輸出只有一行,表示染色的方法總數模p。
資料範圍和注釋 hint
一共有324種染色方法,對13取模後是12。
對於10%的資料,n=1,m<=10,p<=10;
對於20%的資料,n<=10,m<=10,p<=100;
對於50%的資料,n,m,p<=1,000,000,000;
對於100%的資料,1<=n,m,p<=1,000,000,000,000,000,000,且m>=2。
看了題解第二種巧妙的解法後,我竟然還是傻帽的二分求2^xmodp的值,傻傻……
1 #include2 #include3 #include4 #include5using
namespace
std;6//
ifstream fin("cin.in");7//
ofstream fout("test.out");89
long
long
n,m,p;
1011
long
long s,t;int totx=1,toty=1;long
long f[140
];12
long
long yu(long
long x,long
long
y)23 t>>=1;toty++;24}
25}
26 s>>=1;totx++;27}
28return
ans;29}
3031
long
long fangm(long
long
n)40
41int
main()
42
藍橋杯 2n皇后問題
問題描述 給定乙個n n的棋盤,棋盤中有一些位置不能放皇后。現在要向棋盤中放入n個黑皇后和n個白皇后,使任意的兩個黑皇后都不在同一行 同一列或同一條對角線上,任意的兩個白皇后都不在同一行 同一列或同一條對角線上。問總共有多少種放法?n小於等於8。輸入格式 輸入的第一行為乙個整數n,表示棋盤的大小。接...
藍橋杯 2n皇后問題
基礎練習 2n皇后問題 出處問題描述 給定乙個n n的棋盤,棋盤中有一些位置不能放皇后。現在要向棋盤中放入n個黑皇后 和n個白皇后,使任意的兩個黑皇后都不在同一行 同一列或同一條對角線上,任意的兩 個白皇后都不在同一行 同一列或同一條對角線上。問總共有多少種放法?n小於等於8。輸入格式 輸入的第一行...
藍橋杯 2n皇后問題
基礎練習 2n皇后問題 問題描述 給定乙個n n的棋盤,棋盤中有一些位置不能放皇后。現在要向棋盤中放入n個黑皇后 和n個白皇后,使任意的兩個黑皇后都不在同一行 同一列或同一條對角線上,任意的兩 個白皇后都不在同一行 同一列或同一條對角線上。問總共有多少種放法?n小於等於8。輸入格式 輸入的第一行為乙...