題解 洛谷P1350 車的放置(矩陣公式推導)

2022-05-05 20:45:08 字數 735 閱讀 5651

洛谷p1350:

把矩陣分為上下兩塊n與m

放在n中的有i輛車則放在m中有k-i輛車

n的長為a   寬為b

m的長為a+c   寬為d

在每個矩陣中的放置種類公式如下:

a(長度,車輛)*c(寬度,車輛)

給出證明:

比如對於n來說

可以在a列中找出i列放入車 所以是a(a,i)

而且有c(b,i)種選擇列的方式

由此可得 列舉放在n和m的車有幾輛 並計算兩個矩陣種類之積即可

ps:對於矩陣m來說a為a(a+c-i,k-i) 而不是a(a+c,k-i)    因為每排只能放1輛而且有i輛已經放在n中了

#includeusing

namespace

std;

#define mod 100003

#define ll long long

#define maxn 2005ll a,b,c,d,k,ans;

ll fc[maxn][maxn];

ll a(ll n,ll m)

ll c(

int n,int

m)int

main()

view code

洛谷 P1350 車的放置

洛谷 p1350 車的放置 有下面這樣的乙個網格棋盤,a,b,c,d表示了對應邊長度,也就是對應格仔數。當a b c d 2時,對應下面這樣乙個棋盤 要在這個棋盤上放k個相互不攻擊的車,也就是這k個車沒有兩個車在同一行,也沒有兩個車在同一列,問有多少種方案。同樣只需要輸出答案mod 100003後的...

P1350 車的放置

有下面這樣的乙個網格棋盤,a,b,c,d表示了對應邊長度,也就是對應格仔數。當a b c d 2時,對應下面這樣乙個棋盤 要在這個棋盤上放k個相互不攻擊的車,也就是這k個車沒有兩個車在同一行,也沒有兩個車在同一列,問有多少種方案。同樣只需要輸出答案mod 100003後的結果。輸入格式 輸入檔案pl...

洛谷1350 車的放置

題目描述 有下面這樣的乙個網格棋盤,a,b,c,d表示了對應邊長度,也就是對應格仔數。當a b c d 2時,對應下面這樣乙個棋盤 要在這個棋盤上放k個相互不攻擊的車,也就是這k個車沒有兩個車在同一行,也沒有兩個車在同一列,問有多少種方案。同樣只需要輸出答案mod 100003後的結果。輸入輸出格式...