随笔分类 - 算法
一些常用的算法
摘要:Square Tree 题目链接: [Square Tree](SquareTree (nowcoder.com)) 题目描述:给你一棵个节点的树,根节点为。初始时所有结点的权值都为。给你次操作,每次操作给你三个数,其含义为:若节点,其子树中含从$
阅读全文
摘要:题目描述:给你一个的二维矩阵,再给你一个整数,你可以从二维矩阵中任意选择行出来,组合成新的二维矩阵,对于新的二维矩阵,其每一列的最大值的最小值最大是多少。 数据范围:\(1 \leq n \leq 10^5 , 1 \leq m \leq 5 , 1
阅读全文
摘要:上锁的抽屉 题目描述:有个竖着的抽屉,一个抽屉被锁死当且仅当自己和它上面的抽屉都被锁死。问恰好锁死个抽屉的方案数,答案对1e9 + 7取模。 思路:比较明显的dp,定义状态表示对于前个抽屉,锁死个的方案数,其中,表示第
阅读全文
摘要:本部分只是字符串Hash的一些操作和习题的笔记 想了解其中原理和更多知识可以点击此处 Hash基数: 131 Hash大模数:1e9+7, 19260817,89999794200117649,999999786000011449,998244353 字符串Hash的应用 字符串匹配 多项式Hash
阅读全文
摘要:问题描述:给你个在二维平面上的点,让你求任意两个点之间的欧几里得距离的最小值 P1257 平面上的最接近点对 此题 ,所以可以暴力枚举任意两个点求距离然后取最小值 时间复杂度: 可以通过此题 参考代码: #include<bits/s
阅读全文
摘要:DFS序就是将树形结构转化成线性结构,使得树上对某一结点为根的子树的操作变成对一个区间的操作。 将树读入之后,进行,过程中记录初始访问的时间戳和返回时的时间戳,那么以该结点为子树的所有结点都在区间$[intime , outtime]\(内。每次
阅读全文
摘要:题目链接:D 与 S 题目描述: 在追杀。 现在, 在一张有点边的无向图的号点(顶点从开始编号)。 每一秒会剪掉与相邻的一条边,然后会走到一条没被剪掉的边的终点。有个关键点,如果到达了其中一个关键点,则逃跑成功。
阅读全文
摘要:暂存的题目集,后面再做整理 先对树跑一遍dfs获得其dfs序,然后对以某个结点为根的子树进行操作,转化为dfs序上对区间的操作,这个过程可以使用线段树完成 欧拉序:跑dfs的时候,将第一次出现该点的时候,记录为1,第二次出现时记录为-1,对树上链的操作就转化成前缀和了,过程可用线段树维护区间和 询问
阅读全文