12 2017 档案

摘要:题目很明显的背包问题,向上飞可以点无限次,所以是完全背包,向下掉只可能掉一次,所以是01背包。又因为不能在掉落之后再上升,所以要先算完全背包我开始用的是递推,75分(TLE5个点…),对于每一列能够到达的点,推出下一行所能到达的点(所以就重复计算了很多次,完全没有用到... 阅读全文
posted @ 2017-12-22 18:36 zerolt 阅读(104) 评论(0) 推荐(0)
摘要:题目描述 题目我也不知道启发式合并到底是什么东西 好吧,启发式合并就是把小的集合往大的集合合并,学并查集的时候不是有把小树根的父亲设为大树根的操作吗,这大概就是启发式合并的一个典例对于这道题,我的做法是把小SBT的所有结点从小到大全部加入到大SBT中(本来打了个Tre... 阅读全文
posted @ 2017-12-17 12:17 zerolt 阅读(100) 评论(0) 推荐(0)
摘要:题目描述 题目需要的最短时间,明显二分 判断答案是否可行只要把超过答案的路径都记下来,找到一条所有超过的答案路径都经过的边,尝试删掉它,如果最长的路减去它小于答案,那么此答案就是可行的解 至于统计所有路径都经过的边,差分统计一下就好经过running的折磨,感觉tra... 阅读全文
posted @ 2017-12-16 21:51 zerolt 阅读(119) 评论(0) 推荐(0)
摘要:题目描述 题目这题的差分和一般的树上差分写法差好远,参考了dalao的题解还磨了好久才写出来主要要注意的有以下几点: 1.起点s和终点t千万不要弄错(被它卡了半天的我QAQ) 2.记深度为d的起点的总数为cnt[d]:对于一条向上走的路,在起点处cnt[d]++,搜到... 阅读全文
posted @ 2017-12-15 21:09 zerolt 阅读(131) 评论(0) 推荐(0)
摘要:题目描述 题目差不多是裸的LCA吧 只要处理好两条相交路径之间的关系就好了 如果两条路径相交,那么一条路径的LCA一定在另一条路径上 那么需要满足dep[lca1] >= dep[lca2]lca(lca1,s) == lca1 || lca(lca1,t) == l... 阅读全文
posted @ 2017-12-11 18:59 zerolt 阅读(96) 评论(0) 推荐(0)
摘要:题目描述 题目本来想写一道Tarjan的,结果发现这题倍增比较好写 这题主要要搞懂树上差分这东西(NOIP前这东西卡了我好久) 大概要注意的就是对于除了出发点以外的所有点都是重复算了的,所以最后要有-1操作代码#include#include#include#incl... 阅读全文
posted @ 2017-12-11 18:08 zerolt 阅读(118) 评论(0) 推荐(0)
摘要:题目描述 题目对于任务A,即求缩点后入度为0的点的个数 对于任务B,要使整个图连通,则入度0的点需要拓展一条入边,出度0的点需要拓展一条出边,那么需要拓展的最少边数即为max(入度0点数,出度0点数);特别的,当本来整个图连通时,不需要拓展代码#include#inc... 阅读全文
posted @ 2017-12-08 21:52 zerolt 阅读(124) 评论(0) 推荐(0)
摘要:题目描述 题目 (指针版主席树) 阅读全文
posted @ 2017-12-05 13:54 zerolt 阅读(139) 评论(0) 推荐(0)
摘要:题目描述 题目考试有想过每行建一棵树,但是发现空间会爆,就去打模拟了。。。 然而,正解就是每行建一棵树(最后一列单独建一棵),只不过是把插入操作改成删除操作就好了。 因为每次离队影响到的只会是人所在的行和列(如果是最后一列的离队只会影响行)。 对于后面插进来的元素用v... 阅读全文
posted @ 2017-12-01 19:51 zerolt 阅读(282) 评论(0) 推荐(0)

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