jzoj5899 資源運輸 矩陣樹定理

2021-08-28 18:12:02 字數 976 閱讀 5569

這真的是noip難度嗎(;′⌒`)

考試的時候漏掉這個大裸題了。我們知道矩陣樹定理可以求出生成樹的方案,變元矩陣樹定理可以求出所有生成樹邊權乘積的和。這兩個除一下就是答案了

#include

#include

#include

#define rep(i,st,ed) for (int i=st;i<=ed;++i)

#define copy(x,t) memcpy(x,t,sizeof(x))

typedef

long

long ll;

const

int mod=

998244353

;const

int n=

305;

ll a[n]

[n],b[n]

[n],c[n]

[n];

ll ksm

(ll x,ll dep)

return ret;

}int

det(

int n)

} ret=ret*a[i]

[i]%mod;

}return

(ret%mod+mod)

%mod;

}int

main

(void

)copy

(a,c)

; ans=

det(n-1)

;copy

(a,b)

; ans=

det(n-1)

*ksm

(ans,mod-2)

%mod;

printf

("%lld\n"

, ans)

;return0;

}

JZOJ 交換 模擬

給出字串s和字串t,現在你要把s的某乙個字元和t的某乙個字元交換,使得交換之後的s至少要有三個連續相同的字元,交換之後的t也要有三個連續相同的字元。問有多少種不同的交換方式。第一行,乙個字串s。s只含有 r g b 三種字元,長度不超過50,不小於3。而且s任意兩個相鄰的字元都不相同。第二行,乙個字...

JZOJ 規律 遊戲

有一堆金塊,king和貓老大輪流抽金塊,每次抽的個數必然是2的次方冪,求勝利 抽走最後一塊 的是誰 三行每行乙個數 n 0對於每局,如果 king 必勝則輸出一行 king will win.否則第一行輸出 maolaoda willwin.第二行輸出他第一次拿的最小數量。8 42maolaoda ...

JZOJ 禮物 數論

聖誕節這天,某商店準備了n個禮品盒,分別用整數1 n進行編號。其中,編號為1的盒子中有乙個糖果,編號為2的盒子中有2個糖果,編號為n的盒子中有n個糖果。這天一早,中山幼兒園的k個小朋友一起來到這間商店。作為當天的第一批顧客,這些小朋友可以從這n個禮品盒中選出兩個拿走。小朋友們商量了一會兒後決定,他們...