题目大意:给定一棵以\(1\)为根的树,水会从父亲流向儿子,每条边有个权值,表示有多少比例的水会从这条边流走(保证每个点出边比例之和为\(1\))。有些边是超级边,会让流量变成平方(因此有可能流出总量大于流入量)。每个叶子节点有个需水量,求最少从根节点灌入多少水可以满足每个叶子节点的需要。
答案显然满足单调性,二分即可。进行一次\(dfs\),如果当前边流量大于\(1\)且是超级边那就超级加倍
题目大意:给定一张图,\(n \leq 2e5\),每个点的度数不超过\(5\),对图进行黑白染色。要求对于每个点,和它有边相连且颜色和它相同的点的个数不超过\(2\)个,输出任意方案
\(2^n\)可以胡\(30\),加个随机化剪下枝混到\(60\)跑路,正解不会改日再填
UPD:有个比较巧妙的算法,因为每个点的度数不超过\(5\),所以我们依次枚举每个点,如果这个点不符合条件,那么一定至少有\(3\)个点和它颜色相同,将它的颜色取反,那么就最多有\(2\)个点和它颜色相同,也就是说冲突的总对数减少了,反复这一过程,复杂度\(O(n)\)
题目大意:给定一个\(n\times m\)的矩形,要把它分成若干个小矩形,要求每个小矩形至少有一条边在\(n \times m\)的矩形上,给定常数\(k\),每个小矩形为\(a \times b\)的话它的代价为\((ab-k)^2\),求最小总代价
状压\(dp\)
一个\(n\times m\)的矩形要么自己单独一个,要么切开横(竖着)着劈成两半,分别求代价(切多次的话递归下去做就可以了),状压记录一下矩形四条边在不在最大的矩形上
\(O(n^3)\)随便跑
最后得分\(260pts\),时间\(2h\)