上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 20 下一页
摘要: 传送门 分析 我们可以建一个k层图,把dp转移的三维对应到每个点上,每个第k层点连向0层点 我们让第0层点为实点其余为虚点,只要碰到虚点就dfs到他连得所有实点再将实点入队即可 代码 阅读全文
posted @ 2019-03-25 10:06 水题收割者 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 orz ymh 代码 阅读全文
posted @ 2019-03-24 18:26 水题收割者 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 比较套路的题 我们将原来的男向女连边,后面的女向男连边 对于每一组看他们是不是在同一个强连通分量理即可 代码 阅读全文
posted @ 2019-03-20 09:04 水题收割者 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们多维护一个值,代表某个点子树中所有点的权值和 于是如果某个点它的min和max乘a(/b)的值小于范围则直接把整个子树都加进去 估价函数就是这个点的子树中的理论最小值 代码 阅读全文
posted @ 2019-03-20 09:01 水题收割者 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们可以枚举每一个点算它的最近点 估价函数应该分为3种情况计算: 大于max,小于min,位于min和max之间 代码 阅读全文
posted @ 2019-03-20 08:57 水题收割者 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 首先给大家推荐一个非常好的KDTree笔记 here 此题就是用优先队列维护距离最远的k个,最后输出队首元素即可 估价函数就是max和min两点到 询问点的最远距离 代码 阅读全文
posted @ 2019-03-20 08:54 水题收割者 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们让s到1,关键点到t分别连流量为inf的边 于是我们可以考虑跑s到t的最小割 于是我们将所有点拆为两个点,关键点和1的两个点之间连inf,其余点连1 将原图的边也连上,流量为inf 于是跑最小割即可 代码 阅读全文
posted @ 2019-03-20 08:51 水题收割者 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 首先我们发现要让答案最小,或运算一定是没有用的 我们还可以发现a^b = a&(~b) 所以异或运算也没有用 于是我们只考虑否和与 我们还会得到一个性质就是没增加一个数一定会让答案的1的个数至少减少一半 因为我们会让答案与上a和(~a)中是的答案的0的数量增加最多的一个 所以最坏增加剩 阅读全文
posted @ 2019-03-13 23:16 水题收割者 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目大意 给定一个只包含012序列,0表示这个人有2个红球,1表示一个红球一个蓝球,2表示两个蓝球。进行n*2次游戏,每次游戏所有有球的人选择一个球递给前一个人,第一个人把球放到一个序列中,'r'表示红球,'b'表示蓝球,问一共多少种序列 分析 一定要满足前i个人的所有红球>=序列前i个位置 阅读全文
posted @ 2019-03-13 23:10 水题收割者 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们发现可以通过容斥得到Ans = sum(1,R1,1,R2) - sum(1,R1,1,L2-1) - sum(1,L1-1,1,R2) + sum(1,L1-1,L2-1) 于是我们可以吧一个询问分成4部分 然后进行莫队即可 代码 阅读全文
posted @ 2019-03-13 23:04 水题收割者 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们考虑先将所有数离散化 之后我们对于每个状态用一个bitset来记录 其中第i段表示颜色i的信息 对于每一段信息均是段首若干1,剩余若干0表示这种颜色有多少个 于是我们不难想到莫队 答案就是1的总个数-异或值的1的个数乘3 但是我们发现开1e5*1e5的bitset会炸 于是我们考虑 阅读全文
posted @ 2019-03-13 23:00 水题收割者 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 权值不同点之间连权值为1的边 起点向每个1,每个0向终点也连权值为1的边 跑最小割即可 代码 阅读全文
posted @ 2019-03-13 22:45 水题收割者 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们只要求出拿出权值和最小的点集是的剩下的点合法即可 求这个我们可以考虑最小割 我们将棋盘黑白染色 起点向黑点,白点向终点连边权为点权的边 黑点向白点连边权为inf的边 之后跑最小割即可 代码 阅读全文
posted @ 2019-03-13 22:42 水题收割者 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 起点向狼连边,羊向终点连边,边权均为inf 每个点向它四联通的点连边权萎1的边 跑最小割即可 代码 阅读全文
posted @ 2019-03-13 22:38 水题收割者 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 从1道m进行匹配,找到第一个不能继续匹配的点即可 代码 阅读全文
posted @ 2019-03-13 22:34 水题收割者 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们发现n特别小,所以可以从这里入手 我们记录出所有列中某一种状态的列有多少个 我们再记录出每种列最少有多少个1(原来的1的个数和取反后的个数去最小值) 于是我们可以得出对于所有列异或一个数的答案 (实际就是对于每一行有一个全异或1或不异或的操作,将所有行压起来) 于是我们不难得到式子 阅读全文
posted @ 2019-03-10 22:49 水题收割者 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们先考虑暴力如何计算 对于S的子串SS,如果它有位置i使得SS[i] != T[i]那么我们就将两个字符之间用并查集连边 最后答案很明显就是并查集中所有边的个数 于是我们可以发现对于S[i] != T[j]衣服那个会在S的第i-j个子串连边 我们通过观察可以发现i - j = i - 阅读全文
posted @ 2019-03-10 22:39 水题收割者 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们可以将所有的b[i^j]直接对应到b[f(i^j)]上 于是显然可以fwt 我们对b进行t次fwt之后直接将答案与e0卷起来即可 注意由于模数不确定,我们可以将模数扩大$2^m$然后ifwt是直接除掉这个数即可 此题还要使用快速乘 代码 阅读全文
posted @ 2019-03-10 22:31 水题收割者 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们已知所有堆的异或和为0是后手必胜 我们又知道只有一堆时只有异或和为质数的情况为1其它为0 又因为ans[k][i^j] = ans[k-1][i] * ans[k-1][j] 所以直接fwt即可 我们可以对a数组fwt后用快速幂取它的n次方,然后再ifwt回来即可 代码 阅读全文
posted @ 2019-03-10 22:25 水题收割者 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目大意 分析 代码 阅读全文
posted @ 2019-03-02 22:00 水题收割者 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目大意 分析 因为n为质数所以i-1的逆元唯一 因此ai唯一 代码 阅读全文
posted @ 2019-03-02 20:42 水题收割者 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 传送门 题目大意 分析 here 对于最后求p的过程我想再说一下 那个45就是最前一位分别是0~9,所以总贡献就是45乘上每一种数开头对应多少种情况 而后面的10则是他前面可以填多少不同的数对他做的贡献 代码 阅读全文
posted @ 2019-03-02 19:55 水题收割者 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们知道选一个点的代价就是他所有出边边权的异或和 由于一条边如果两个端点均选边权会异或两次变回0,所以不必担心重复的情况 于是直接跑线性基即可 代码 阅读全文
posted @ 2019-02-28 22:39 水题收割者 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 这个题和寿司晚宴有点像 我们知道大于$\sqrt n$的质因子最高就是一次 于是我们对所有数以他的大质数为关键字排序 设dp[i][p2][p3][p5][p7][p11][p13][0/1]表示考虑到第i个,小质数分别为几次,大质数是否选了 对于每一段大质数我们用一个别的数组转移,然 阅读全文
posted @ 2019-02-28 22:36 水题收割者 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们发现对于没有发现的点相对位置不会发生改变 于是我们可以吧问题转化为求一个lis 于是我们字典序第k小的答案就是字典序第k大的lis 代码 阅读全文
posted @ 2019-02-28 22:29 水题收割者 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们用0表示向右,1表示向上 于是可以得到一条江棋盘分为两块的线 直接dp即可 代码 阅读全文
posted @ 2019-02-26 18:15 水题收割者 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们发现对于大于$\sqrt(n)$的数每个数最多只会包含一个 所以我们把每个数按照大质数的大小从小到大排序 我们知道对于一种大质数只能被同一个人取 所以f1表示被A取,f2表示被B取 最终答案就是这两个的答案减去啥都不去的答案 因为啥都不去会被重复记录两次 对于小质数则直接状压转移即 阅读全文
posted @ 2019-02-26 18:13 水题收割者 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 https://www.luogu.org/blog/22112/solution-p5155 代码 阅读全文
posted @ 2019-02-26 18:08 水题收割者 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 咕咕咕 坑点就是没有本质相同的字符串且x<=y 代码 阅读全文
posted @ 2019-02-23 22:04 水题收割者 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 传送门 分析 我们发现一个很神的性质,就是对于一个数如果放在它之前的数小于它那它一定对答案没有贡献 于是我们用dp[i][j]表示从大往小考虑了前i个数,当前答案是j的方案数 我们知道它由两种情况转移来,一种是把这个数放上,另一种是在后面的位置选任意一个给它 代码 阅读全文
posted @ 2019-02-22 16:07 水题收割者 阅读(246) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 20 下一页