随笔分类 -  OJ -- Vjudge

摘要:【CodeChef】Querying on a Grid(分治,最短路) 题面 "Vjudge" "CodeChef" 题解 考虑分治处理这个问题,每次取一个mid,对于mid上的三个点构建最短路径树(因为保证了最短路唯一所以是树)。 如果两点之间的最短路径跨越了mid,那么必定有$di 阅读全文
posted @ 2019-03-01 16:57 小蒟蒻yyb 阅读(454) 评论(0) 推荐(0) 编辑
摘要:【HDU4336】Card Collector(Min Max容斥) 题面 "Vjudge" 题解 原来似乎写过一种状压的做法,然后空间复杂度很不优秀。 今天来补一种神奇的方法。 给定集合S,设max{S}S中的最大值,min{S}为集合S中的最小值。 那么我们可以得到 阅读全文
posted @ 2018-08-21 17:03 小蒟蒻yyb 阅读(341) 评论(9) 推荐(0) 编辑
摘要:【HDU3595】GG and MM(博弈论) 题面 "HDU" 一个游戏由多个游戏组成,每次每个操作者必须操作所有可以操作的游戏,操作集合为空者输。 每个游戏由两堆石子组成,每次可以从较多的那一堆中取走较小那堆的数量的倍数个石子。 判断胜负。 题解 EverySG,所以我们只需要分开考虑两堆 阅读全文
posted @ 2018-08-17 19:53 小蒟蒻yyb 阅读(613) 评论(3) 推荐(0) 编辑
摘要:【HDU3032】Nim or not Nim?(博弈论) 题面 "HDU" 题解 MultiSG模板题 阅读全文
posted @ 2018-08-16 21:19 小蒟蒻yyb 阅读(398) 评论(0) 推荐(0) 编辑
摘要:【HDU1848】Fibonacci again and again(博弈论) 题面 "Hdu" 你有三堆石子,每堆石子的个数是n,m,p,你每次可以从一堆石子中取走斐波那契数列中一个元素等数量的石子数,两人轮流取,不能操作者输,判定先后手的胜利。 题解 根据SG定理,三堆石子可以拆开来看, 阅读全文
posted @ 2018-08-16 20:07 小蒟蒻yyb 阅读(501) 评论(0) 推荐(0) 编辑
摘要:题面 "HDU" 题解 Bash Game模板题 cpp include using namespace std; int T,n,m; int main() { ios::sync_with_stdio(false); cin T; while(T ) { cin n m; if(n%(m+ 阅读全文
posted @ 2018-08-15 19:44 小蒟蒻yyb 阅读(367) 评论(0) 推荐(0) 编辑
摘要:【POJ2411】Mondriaan's Dream(轮廓线DP) 题面 "Vjudge" 题解 这题我会大力状压!!! 时间复杂度大概是O(22nn2),设f[i][S]表示当前第i行向下伸展出去的状态为S 那么每次枚举一下当前行的放法,进行转移就好了。 然后就长成了这个样 阅读全文
posted @ 2018-08-03 16:19 小蒟蒻yyb 阅读(512) 评论(1) 推荐(0) 编辑
摘要:【HDU4689】Derangement(动态规划) 题面 "Vjudge" 给定一个+组成的字符串,长度为n。 如果第i位是+,那么pii,否则$p_i include define ll long long ll f[22][22]; char ch[22]; int 阅读全文
posted @ 2018-07-29 20:06 小蒟蒻yyb 阅读(281) 评论(0) 推荐(1) 编辑
摘要:【HDU5421】Victor and String(回文树) 题面 "Vjudge" 大意: 你需要支持以下操作: 动态在前端插入一个字符 动态在后端插入一个字符 回答当前本质不同的回文串个数 回答当前回文串个数 题解 回文树前端插入的操作,学一学感觉并不难? 额外维护一下一个前端插入的$last 阅读全文
posted @ 2018-06-21 21:15 小蒟蒻yyb 阅读(897) 评论(0) 推荐(1) 编辑
摘要:【Aizu2292】Common Palindromes(回文树) 题面 "Vjudge" ~~神TMD日语~~ 翻译: 给定两个字符串S,T,询问(i,j,k,l)这样的四元组个数 满足S[i,j],T[k,l]都是回文串并且S[i,j]=T[k,l] 题解 自己yy一下就会做 阅读全文
posted @ 2018-06-07 20:38 小蒟蒻yyb 阅读(420) 评论(0) 推荐(0) 编辑
摘要:【CodeChef】Palindromeness(回文树) 题面 "Vjudge" "CodeChef" "中文版题面" 题解 构建回文树,现在的问题就是要求出当前回文串节点的长度的一半的那个回文串所代表的节点 定义half表示长度最长并且长度小于等于当前节点长度一半的回文串所代表的节点 $ha 阅读全文
posted @ 2018-05-28 20:46 小蒟蒻yyb 阅读(522) 评论(0) 推荐(0) 编辑
摘要:【POJ3621】【洛谷2868】Sightseeing Cows(分数规划) 题面 "Vjudge" "洛谷" 大意: 在有向图图中选出一个环,使得这个环的点权/边权最大 题解 分数规划 二分答案之后把每条边的边权换为mid·边权 出点的点权 然后检查有没有负环就行啦 阅读全文
posted @ 2018-05-24 15:19 小蒟蒻yyb 阅读(270) 评论(0) 推荐(0) 编辑
摘要:【HDU5909】Tree Cutting(FWT) 题面 "vjudge" 题目大意: 给你一棵n个节点的树,每个节点都有一个小于m的权值 定义一棵子树的权值为所有节点的异或和,问权值为0..m1的所有子树的个数 题解 考虑dpf[i][j]表示以i为根节点的子树中, 阅读全文
posted @ 2018-05-21 08:52 小蒟蒻yyb 阅读(1002) 评论(0) 推荐(1) 编辑
摘要:【CSU1911】Card Game(FWT) 题面 "vjudge" 题目大意: 给定两个含有n个数的数组 每次询问一个数x,回答在每个数组中各选一个数,或起来之后的结果恰好为x的方案数。 题解 FWT的模板题 FWT写起来是真的舒服 cpp include include i 阅读全文
posted @ 2018-05-20 21:04 小蒟蒻yyb 阅读(577) 评论(7) 推荐(0) 编辑
摘要:【SPOJ】Highways(矩阵树定理) 题面 "Vjudge" "洛谷" 题解 矩阵树定理模板题 无向图的矩阵树定理: 对于一条边(u,v),给邻接矩阵上G[u][v],G[v][u]加一 对于一条边(u,v),给度数矩阵上D[u][u],D[v][v]加一 定义霍尔基夫矩阵$C 阅读全文
posted @ 2018-04-21 09:16 小蒟蒻yyb 阅读(456) 评论(0) 推荐(0) 编辑
摘要:【SPOJ】Power Modulo Inverted(拓展BSGS) 题面 "洛谷" 求最小的y 满足 kxy(mod z) 题解 拓展BSGS模板题 cpp include include include include include include incl 阅读全文
posted @ 2018-04-12 20:47 小蒟蒻yyb 阅读(827) 评论(0) 推荐(1) 编辑
摘要:【HDU5730】Shell Necklace(多项式运算,分治FFT) 题面 "Vjudge" 翻译: 有一个长度为n的序列 已知给连续的长度为i的序列装饰的方案数为a[i] 求将n个位置全部装饰的总方案数。 答案mod 313 题解 很明显,是要求: $f[n]=\sum_ 阅读全文
posted @ 2018-04-11 22:36 小蒟蒻yyb 阅读(539) 评论(1) 推荐(2) 编辑
摘要:【SPOJ】QTREE7(Link Cut Tree) 题面 "洛谷" "Vjudge" 题解 和 "QTREE6" 的本质是一样的:维护同色联通块 那么,QTREE6同理,对于两种颜色分别维护一棵LCT 每次只修改和它父亲的连边。 考虑如何维护最大值 因为每次access会删去一个数,所以 阅读全文
posted @ 2018-04-09 17:28 小蒟蒻yyb 阅读(314) 评论(0) 推荐(0) 编辑
摘要:【SPOJ】QTREE6(Link Cut Tree) 题面 "Vjudge" 题解 很神奇的一道题目 我们发现点有黑白两种,又是动态加边/删边 不难想到LCT 最爆力的做法,显然是每次修改单点颜色的时候 暴力修改当前点和它的父亲以及儿子之间的连边状态 但是这样显然是假的(菊花树了解一下) 怎么 阅读全文
posted @ 2018-04-08 22:31 小蒟蒻yyb 阅读(357) 评论(0) 推荐(0) 编辑
摘要:【POJ1741】Tree(点分治) 题面 "Vjudge" 题目大意: 求树中距离小于K的点对的数量 题解 完全不觉得点分治了。。 简直GG,更别说动态点分治了。。。 于是来复习一下。 对于每一层分治重心 求出它到子树中任意点的距离 然后twopointers计算满足大于K的点对 阅读全文
posted @ 2018-04-05 21:48 小蒟蒻yyb 阅读(376) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示