BZOJ5314: [Jsoi2018]潜入行动 https://lydsy.com/JudgeOnline/problem.php?id=5314 分析: 裸树形背包,设\(f[x][i][0/1][0/1]\)表示\(x\)子树选了\(i\)个点,是否能覆盖\(x\),是否选了\(x\). 代码: #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #inc…
潜入行动 bzoj-5314 Jsoi-2018 题目大意:题目链接. 注释:略. 想法: 学长给我们除了一套考试题,三个学长一人一道这是T1. 好吧好吧,傻逼背包...... 复杂度$O(nk)$. Code: #include<bits/stdc++.h> #define mod 1000000007 #define N 100010 using namespace std; typedef long long ll; int n,K,size[N]; ll g[101][2][2]; i…
https://www.lydsy.com/JudgeOnline/problem.php?id=5314 https://www.luogu.org/problemnew/show/P4516 https://loj.ac/problem/2546 外星人又双叒叕要攻打地球了,外星母舰已经向地球航行!这一次,JYY已经联系好了黄金舰队,打算联合所有JSOIer抵御外星人的进攻.在黄金舰队就位之前,JYY打算事先了解外星人的进攻计划.现在,携带了监听设备的特工已经秘密潜入了外星人的母舰,准备对外…
题目链接 BZOJ5314 题解 设\(f[i][j][0|1][0|1]\)表示\(i\)为根的子树,用了\(j\)个监测器,\(i\)节点是否被控制,\(i\)节点是否放置的方案数 然后转移即可 \(O(nk^2)\)?? 用上子树大小来优化就是\(O(nk)\)的 对于子树大小都超过\(k\)的子树,转移\(O(k^2)\),这样的情况最多出现\(\frac{n}{k}\)次 对于子树大小有一个超过\(k\)的子树,没超过\(k\)的那个子树里每个点贡献\(O(k)\),这样的情况对每个点…
题意:一棵树选择恰好k个结点放置监听器 每个监听器只能监听相邻的节点 问能使得所有节点被监听的种类数 题解:反正就是很well-known的树形DP了 至于时间复杂度为什么是nk 不会不学 很好想到四维dp 在x节点放置j个 x有没有放监听器 x有没有被监听 瞎搞搞就好了 头写昏了转移就抄别人了的TAT 关键是这个题开ll会mle 不开会爆int 取%频繁还会tle 西安太热了!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!…
[BZOJ5314][JSOI2018]潜入行动(动态规划) 题面 BZOJ 洛谷 题解 不难想到一个沙雕\(dp\),设\(f[i][j][0/1][0/1]\)表示当前点\(i\),子树中一共放了\(j\)个,这个点是否放了,这个是否被覆盖了. 看起来直接合并是\(O(nk^2)\)的QwQ..... 然后我以为是\(O(nk^2)\)的就不会做了嘤嘤嘤. 实际上是\(O(nk)\)的... 证明大概是这样的: 考虑什么时候会产生\(O(k^2)\)的贡献,即一个点有两棵子树的大小大于\(k…
Description 外星人又双叒叕要攻打地球了,外星母舰已经向地球航行!这一次,JYY已经联系好了黄金舰队,打算联合所有JSO Ier抵御外星人的进攻.在黄金舰队就位之前,JYY打算事先了解外星人的进攻计划.现在,携带了监听设备的特工 已经秘密潜入了外星人的母舰,准备对外星人的通信实施监听.外星人的母舰可以看成是一棵n个节点.n-1条边的 无向树,树上的节点用1,2...n编号.JYY的特工已经装备了隐形模块,可以在外星人母舰中不受限制地活动,可以 神不知鬼不觉地在节点上安装监听设备.如果在…
题目描述 外星人又双叒叕要攻打地球了,外星母舰已经向地球航行!这一次,JYY 已经联系好了黄金舰队,打算联合所有 JSOIer 抵御外星人的进攻. 在黄金舰队就位之前,JYY 打算事先了解外星人的进攻计划.现在,携带了监听设备的特工已经秘密潜入了外星人的母舰,准备对外星人的通信实施监听. 外星人的母舰可以看成是一棵 n 个节点. n-1 条边的无向树,树上的节点用 1,2,\cdots,n1,2,⋯,n 编号.JYY 的特工已经装备了隐形模块,可以在外星人母舰中不受限制地活动,可以神不知鬼不觉地…
LINK:潜入行动 初看题感觉很不可做 但是树形dp的状态过于明显. 容易设\(f_{x,j,l,r}\)表示x为根子树内放了j个设备且子树内都被覆盖l表示x是否被覆盖r表示x是否放设备的方案数. 初值我是上面四个状态都设为1 转移分类讨论一下也不困难. 然后需要容斥一下. 复杂度看起来是\(n\cdot k^2\)的 其实是\(n\cdot k\)的 证明 这个我就不口胡了. 当然还有一种转移是只给正确的状态转移 这样就不需要容斥了 可能常数会小一点. 我常数比较大 开o2才能过 枚举的边界注…
题面传送门 一眼树形 \(dp\) 本题有 \(2\) 大难点. 难点之一是状态的设计,这里需要四维状态,\(dp[i][j][0/1][0/1]\) 表示在以 \(i\) 为根的子树内放了 \(j\) 个监听器,\(i\) 号点是否放了监听器,\(i\) 号点是否被它的儿子覆盖,在这种情况下的方案数. 设计好了状态,转移也就水到渠成了. \(dp[u][j][0][0]\) 只能从 \(dp[v][j][0][1]\) 转移:\(i\) 号节点没放监听设备也没被覆盖,说明它的儿子都没放监听设备…