摘要: 手机号码 数位DP模板题 记忆化搜索: 阅读全文
posted @ 2018-07-04 08:56 yjk 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 【模板】割点 割点集合:一个顶点集合V,删除该集合的所有定点以及与这些顶点相连的边后,原图不连通,就称集合V为割点集合 点连通度:最小割点集合中的顶点数 边连通度:最小割边集合中的边数 割点:割点集合中唯一的一个元素 Tarjan求缩点: 一个点为缩点的条件: 1.该点为根,搜索树中有大于1个子树 阅读全文
posted @ 2018-07-04 08:43 yjk 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 受欢迎的牛 题目描述 一些可以当明星的牛,一定会构成一个强连通分量,我们可以先缩点,最后统计一下出度为零的强连通分量大小即可, 若出度为零的强连通分量个数大于1,则输出0 阅读全文
posted @ 2018-07-04 08:33 yjk 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 卢卡斯定理 把n写成p进制a[n]a[n-1][n-2]…a[0],把m写成p进制b[n]b[n-1][n-2]…b[0],则C(n,m)与C(a[n],b[n])*C(a[n-1],b[n-1])*C(a[n-2],b[n-2])*…*C(a[0],b[0])模p同余 阅读全文
posted @ 2018-07-04 08:07 yjk 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 树链剖分 树链剖分就是把一个树有顺序地分成几个链,记录每个点的顺序,存在数组中,就可以用线段树维护树上的一些操作 以下是几个模板题: 数的统计 《信息学奥赛一本通提高篇》上的模板是这样的: 模板 水题 阅读全文
posted @ 2018-06-30 20:17 yjk 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 压缩 阅读全文
posted @ 2018-06-23 17:12 yjk 阅读(139) 评论(0) 推荐(0) 编辑
摘要: Polygon 比较裸的环形DP(也可以说是区间DP) 将环拆成链,复制到后面,做区间DP即可 阅读全文
posted @ 2018-06-23 17:09 yjk 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 骑士 题目链接 这道题一看,似乎和舞会是一样的,然而它并没有保证是一棵树 但是,对于每个连通块,必有相同的点数和边数,这样的图一定是一棵树上加一条边 这条边一定回使图中形成一个环,这种图貌似叫“基环树”。。 我们只要将不同的连通块分开处理,最后相加即可 对于一个基环树,只要找到环上的一条边,把它“拆 阅读全文
posted @ 2018-06-23 17:05 yjk 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 【模板】可持久化线段树 1(主席树) https://www.luogu.org/problemnew/show/P3834 主席树支持历史查询,空间复杂度为O(nlogn),需要动态开点 本题用一个类似于前缀和的思想,离散化之后 用主席树维护每一个前缀的“桶”数组 阅读全文
posted @ 2018-06-23 16:52 yjk 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 合唱队 区间DP f[l][r][0/1]表示生成目标序列中的区间[l,r],最后一个数是a[l]/a[r] 的方案数 边界: f[i][i][0]=1 转移: f[l][r][0]=(a[l]<a[l+1]?f[l+1][r][0]:0)+(a[l]<a[r]?f[l+1][r][1]:0); f 阅读全文
posted @ 2018-06-20 21:49 yjk 阅读(123) 评论(0) 推荐(0) 编辑