上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 67 下一页
摘要: 题目链接 "BZOJ1061" 题解 今天终于用正宗的线性规划$A$了这道题 题目可以看做有$N$个限制和$M$个变量 变量$x_i$表示第$i$种志愿者的人数,对于第$i$种志愿者所能触及的那些天,$x_i$的系数都为$1$,其余为$0$ 也就是 $$ min \; z = \sum\limits 阅读全文
posted @ 2018-06-30 19:00 Mychael 阅读(253) 评论(0) 推荐(0) 编辑
摘要: "uoj179" 输入后转化为线性规划标准形式 $$max \; z = \sum\limits_{j = 1}^{n}c_jx_j$$ $$ \left\{ \begin{aligned} \sum\limits_{j = 1}^{n}a_{ij}x_j = b_j \quad i \in [1, 阅读全文
posted @ 2018-06-30 17:03 Mychael 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "BZOJ3834" 题解 容易想到对于$gcd(x,y) = D$,$d$的倍数一定存在于两个区间中 换言之 $$\lfloor \frac{a 1}{D} \rfloor include include include include include define Redge(u) f 阅读全文
posted @ 2018-06-30 12:29 Mychael 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "BZOJ3835" 题解 对于$k$,设$s[i]$为深度大于$i$的点数 $$ans = max\{i + \lceil \frac{s[i]}{k}\} \rceil$$ 最优决策一定是一开始每一层拿不满$k$个点,然后之后一直往下拿的同时通过中间层剩余的点拿满$k$个点 我们就有前 阅读全文
posted @ 2018-06-30 10:48 Mychael 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "BZOJ3829" 题解 设$f[i]$为从$i$父亲进入$i$之前开始计时,$i$的子树中最晚装好的时间 同时记$siz[i]$为节点$i$子树大小的两倍,即为从父亲进入并回到父亲的时间 那么有 $$f[i] = max\{C[i],f[to] + siz_{pre}\} + 1$$ 阅读全文
posted @ 2018-06-29 15:00 Mychael 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "BZOJ3836" 题解 显然这是个$NP$完全问题,此题的解决全仗 任意两点间不存在节点数超过10的简单路径 的性质 这意味着什么呢? $dfs$树深度不超过$10$ $10$很小呐,可以状压了呢 我们发现一个点不但收祖先影响,而且受儿子影响,比较难处理 我们就先处理该点及其祖先,然后 阅读全文
posted @ 2018-06-29 12:08 Mychael 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "BZOJ2800" 题解 区间加极难操作,差分之后可转化为两点一加一减 那么现在问题就将每个点暂时独立开来 先判定每个点是否被$(A,B)$整除,否则无解 之后我们先将$A,B$化为互质,所有数除一个$(A,B)$ 求得 $$Ax + By = 1$$ 那么对于点$d[i]$,满足 $$ 阅读全文
posted @ 2018-06-29 07:43 Mychael 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "CF321E" 题解 题意:将$n$个人分成$K$段,每段的人两两之间产生代价,求最小代价和 容易设$f[k][i]$表示前$i$个人分成$k$段的最小代价和 设$val(i,j)$为$i$到$j$两两之间产生的代价和,容易发现就是一个矩形,可以预处理前缀和$O(1)$计算 那么有 $$ 阅读全文
posted @ 2018-06-28 15:58 Mychael 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "BZOJ2079" 题解 题意就是黑白染色,要求相邻点存在不同颜色的点 显然从一个点出发,相邻点如果没有染色,染不同颜色,那么一个联通块一定会满足要求 证明:在$dfs$树上,每个点父亲和它不同色 所以只需检查有无孤立的点 C++ include include include incl 阅读全文
posted @ 2018-06-28 12:28 Mychael 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "BZOJ3522" 题解 就是询问每个点来自不同子树离它等距的三个点的个数 数据支持$O(n^2)$,可以对每个距离分开做 设$f[i][j]$表示$i$的子树中到$i$距离为$j$的点的个数 利用换根法可得到每个点作为根时的值 然后随便容斥一下就是答案 C++ include incl 阅读全文
posted @ 2018-06-28 11:57 Mychael 阅读(136) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 67 下一页