博主蒟蒻,目前還不會動態dp,所以下面說的是乙個並不優秀的暴力,我會補的!
我們考慮按權值從大到小依次點亮每個點,相同權值可以同時點亮,每次點亮後,我們進行一次樹形揹包。
處理出$f[i][j]$表示i的子樹中有j個亮點的方案數,然後就ac了。
有兩個小優化,乙個是將揹包的列舉上限設為min(size[x],k),此處size[x]為子樹中點亮的點的的個數。
還有就是我們可以把大於k的dp值都和k合併到一起,因為我們需要的是所有大於等於k的方案數。
1 #include 2 #include 3 #include 4 #include 5 #include 6view code#define n 1700
7#define mod 64123
8using
namespace
std;
9int e=1
,head[n];
10struct
edgeed[n<<1
];13
void add(int u,int
v)18
intn,m,k,a[n],pp[n];
19int
f[n][n],g[n],size[n],vis[n],ans,sum,last;
20bool cmp(int a,int b)
21void dfs(int x,int
fa)37 f[x][0]++;
38 (sum+=f[x][k])%=mod;39}
40int
main()
46 sort(pp+1,pp+n+1
,cmp);
47for(int i=1,u,v;i)
51for(int i=1;i<=n;)
59 printf("
%d\n
",ans);
60return0;
61 }
bzoj5251 2018多省省隊聯測 劈配
直接網路流模擬即可ac。可持久化 暴力 90分,可持久化 二分 30分,暴力加邊 二分 100分。我也很無奈啊。ivan便漲紅了臉,額上的青筋條條綻出,爭辯道,memcpy也是可持久化 memcpy!oier的事,當然是可持久化!接連便是難懂的話,什麼 可持久化無旋treap套線段樹啟發式合併 什麼...
bzoj5253 2018多省省隊聯測 制胡竄
字尾自動機挺好毒瘤的題。我們考慮哪些切點是不合法的。肯定是所有的匹配串都被切了。我們考慮第乙個切口的位置。當第乙個切口在第乙個出現位置前時,第二個切口必須切掉所有的串。當第乙個切口在 l 和 l 間的時候 此時必須保證切掉第乙個串 第二個切口必須切掉 s 到 s 這些串 當第乙個切口在 l 後時 此...
BZOJ 5251 2018多省省隊聯測 劈配
題目大意 題解 要求最優的錄取方案,網路流。問每個人的排名至少上公升多少才能滿足期望,這個有二分性。二分 網路流判定,沒有加優化所以在某些 上會t。include include include include define pi acos 1 using namespace std struct ...