摘要:"题目" 首先考虑二分,然后发现最小长度越大的话,赛道就越少。所以可以用最终的赛道个数来判断长度是否合理。问题转化为给定一个长度,问最多有多少条互不重叠路径比这个给定长度大。 考虑贪心,毕竟贪心也是二分check函数的常用做法。原图毕竟为一棵树,每条路径都由一个端点一个终点和他们的$LCA$之间的连 阅读全文
posted @ 2019-11-09 18:50 刘文尧 阅读(105) 评论(0) 推荐(0) 编辑
摘要:"题目" 题意简化一下就是找题目给定的n个数最多能消掉多少个,我们用个tong[i]来记录i这个数值能不能用小于等于i的货币组合起来,等于1意味着他只能由自己本身的货币组成,等于2说明他可以被其他货币组成(此时的数不一定是货币,但等于2的货币不能要),最后只需要统计一下n个数里有几个tong等于1即 阅读全文
posted @ 2019-11-09 16:18 刘文尧 阅读(112) 评论(0) 推荐(0) 编辑
摘要:"题目" 悬线法的思想——即扫描线的思想,每个矩阵必定是由两个障碍来构成左右边界或者上下边界。 如果此两个障碍组成了左右边界,枚举这两个障碍中途更新这两个障碍之间的矩阵上下边界,并且更新最大值。 考虑如何线性求出两个障碍的矩阵上下边界, 我们可以把障碍按x坐标排序,然后对于每个障碍,都找x比他大的障 阅读全文
posted @ 2019-11-09 09:50 刘文尧 阅读(113) 评论(0) 推荐(0) 编辑
摘要:"题目" $DP$ 设状态$dp[i]$为$i$位置放了斑点牛,前$i$个位置能得到的最多的牛。 有方程$dp[i]=max(dp[j]+1,dp[i])$,而我们并不知道什么$j$可以使$i$不在区间内 由于$i$位置放了牛,又因为$i$所在的区间只能放一个,$j$不能跟$i$同属于一个区间,又因 阅读全文
posted @ 2019-11-09 08:33 刘文尧 阅读(127) 评论(0) 推荐(0) 编辑