WC 2018 州區劃分

2022-03-01 14:50:40 字數 1117 閱讀 3390

給乙個無向圖$g(v,e)$滿足$|v|<=21$,對於某一種將$g(v,e)$劃分為k個的有序集合方案,若每乙個子集$g_i(v_i,e_i)$,$e_i=\$都不存在尤拉迴路,則會對答案貢獻為

其中,$x$為集合元素,$w_x$為元素$x$的權值。

題解:

被題意坑成cu……我還是太菜了……

其實很顯然我們會得到乙個$dp$,設$f_s$為集合$s$劃分後的乘積和。

顯然我們有轉移方程:

$w_s$表示$[g(s,e_s)不存在尤拉迴路](\sum_w_x)^p$

乙個裸的子集卷積的式子。

時間複雜度$n^2 2^n$

#include "bits/stdc++.h"

using namespace std;

inline int read ()

const int mod = 998244353,n=1<<21;

inline int powmod (int a,int b) return ret;

}inline void add (int &x,int y)

inline void erase (int &x,int y)

inline void fwt (int *a,int n,int f)

for (i=0;i

f[0][i]=1;

for (i=1;i<=n;++i)

fwt(g[i],s,0),

memcpy(f[i],g[i],sizeof f[i]);

for (i=1;i<=n;++i)

fwt(f[i],s,1);

for (j=0;j

if (i^n) fwt(f[i],s,0);

}printf("%d\n",f[n][s-1]);

}

WC2018 州區劃分

點此看題 設d p s dp s dp s 為選出來的點狀壓為s ss,所得到的滿意度總和,轉移 d p s 1 f s i s dp i g s i dp s frac sum dp i times g s i dp s f s 1 i s d p i g s i 其中f s f s f s 是w...

WC2018 州區劃分

題目 就當那個判斷乙個州不合法的條件是存在尤拉迴路吧 一張無向圖存在尤拉迴路的條件是 圖連通不存在度數為奇數的點 於是我們列舉每乙個子集,可以在 o 2 nn 2 的時間內判斷乙個集合是否能獨立成為乙個州 之後我們設 dp i 表示選取狀態為 i 的時候的答案,s i 為這個狀態對應的城市的人口之和...

WC2018 州區劃分

題面給一張帶點權的無向圖 要求對其劃分為聯通且不存在尤拉迴路的多個子圖 定義乙個子圖的貢獻是 第 i 個子圖的點權和佔前 i 個子圖的點權和的比例的 p 次冪 定義乙個劃分的貢獻是 該劃分下所有子圖的貢獻的乘積 求所有劃分的貢獻之和 設 f s 為選取點集為 s 時所有劃分的貢獻和 有 f s fr...