上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 33 下一页
摘要: 题目大意:给你$n$个点,求出其中最远点的距离 题解:求出凸包,最远点一定都在凸包上,可以对每条边求出最远的点(可以双指针),然后求出和这条边的端点的距离,更新答案 卡点:最开始对每个点求出最远点,但这样并不可以双指针怎么搞。 C++ Code: 阅读全文
posted @ 2018-12-02 11:11 Memory_of_winter 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有$n$个数,每个数为$0$或$1$,给你其中一些关系,一个关系形如其中几个数的异或和是多少,问最少知道前几个关系就可以得出每个数是什么,并输出每个数 题解:异或方程组,和高斯消元差不多,就是把加减改成了异或。 卡点:用$bitset$优化,输出时输反了 C++ Code: 阅读全文
posted @ 2018-12-01 10:57 Memory_of_winter 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一个$n\times m$的方格,要求你从中选择一些数,其中没有相邻两个数,使得最后和最大 题解:网络流,最小割,发现相邻的两个点不可以同时选择,进行黑白染色,原点向黑点连一条容量为点权的边,白点向汇点连一条容量为点权的边,黑点向周围一圈的白点连容量为$inf$的边,总权值减去跑出来的 阅读全文
posted @ 2018-11-29 20:39 Memory_of_winter 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你$n$个数,有两个操作: 题解:多人尝试得,现在这道题线段树套线段树过不去,所以我学习了一下树状数组套线段树,线段树只维护值域上的区间和,把树状数组询问部分变成这么多棵线段树相减,这样就可以在线段树上二分了 卡点:无 C++ Code: 阅读全文
posted @ 2018-11-29 15:00 Memory_of_winter 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一张有向图,每个点最多一条出边,问从每个开始,走多少步会到一个已经过的点 题解:$tarjan$缩点,然后建反图$DP$ 卡点:无 C++ Code: 阅读全文
posted @ 2018-11-28 09:41 Memory_of_winter 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 题目大意:问长度为$n$的$Sam$数有几个,$Sam$数的定义为没有前导零,相邻两个数字之差绝对值小于等于$2$的数 题解:发现转移方程一定,可以矩阵快速幂。 卡点:没有特判$n=1$的情况 C++ Code: 阅读全文
posted @ 2018-11-28 08:35 Memory_of_winter 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有一棵$n$个点的树,和一个费用$m$,每个点有一个费用和价值,请选一个点,再从它的子树中选取若干个点,使得那个点的价值乘上选的点的个数最大,要求选的点费用总和小于等于$m$ 题解:树形$dp$,贪心可得选的点一定是费用最少的几个点,可以用可并堆,大根堆,若总费用大于$m$就把堆顶弹掉,直 阅读全文
posted @ 2018-11-27 19:07 Memory_of_winter 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有一棵$n$个点的树,第$i$个点权值为$w_i$,有两种操作: 题解:树剖,然后就可以把树上问题转化为序列上的问题,可持久化$Trie$即可 卡点:树剖判断条件错 C++ Code: 阅读全文
posted @ 2018-11-27 15:57 Memory_of_winter 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 题目大意:求树上最长的异或路径 题解:由于异或具有自反性,只需要求出每个节点到根的异或长度,塞进$Trie$里,最后对每个节点找一下最大值更新答案即可 卡点:把动态开点写成了可持久化,然后空间要再多开一点(比层数多一) C++ Code: 阅读全文
posted @ 2018-11-27 10:30 Memory_of_winter 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有一串初始长度为$n$的序列$a$,有两种操作: 题解:把序列前缀和,变成$S$,就变成了在$[l-2,r-1]$区间内找一个数$S_p$,使得$S_p\oplus S_n\oplus x$最大。可持久化$trie$ 卡点:无 C++ Code: 阅读全文
posted @ 2018-11-27 09:53 Memory_of_winter 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有$5$种操作: 题解:树套树,权值线段树套平衡树 卡点:$TLE$卡了一会(我好菜啊) C++ Code: 阅读全文
posted @ 2018-11-26 19:20 Memory_of_winter 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你$n$个点,每个点有权值$k$,现有两种操作: 1. $B\;x\;y:$将$x,y$所在联通块合并2. $Q\;x\;k:$查询第$x$个点所在联通块权值第$k$小是哪个数 题解:线段树合并,权值线段树上二分即可 卡点:无 C++ Code: 阅读全文
posted @ 2018-11-26 09:21 Memory_of_winter 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一棵树,有两个操作: 题解:树剖,可以维护区间或,然后若一段区间为$0$则跳过,否则在线段树上二分 卡点:二分部分多大了一个$=$,然后$MLE$ C++ Code: 阅读全文
posted @ 2018-11-25 17:22 Memory_of_winter 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给一张无向图,找一条字典序最小的欧拉路径 题解:若图不连通或有两个以上的奇数点,则没有欧拉路径,可以$dfs$,在回溯时把这个节点加入答案 卡点:没有在回溯时加入答案,导致出现了欧拉路径没走环(少走了一段) C++ Code: 阅读全文
posted @ 2018-11-25 10:04 Memory_of_winter 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 题目大意:一张无向图,问最少设置几个关键点使得有点被覆盖(一个关键点可以覆盖所有与它相连的点),关键点不可以相邻 题解:二分图染色,若不冲突则为较少的一种颜色数 卡点:无 C++ Code: 阅读全文
posted @ 2018-11-24 22:47 Memory_of_winter 阅读(124) 评论(0) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 33 下一页