03 2023 档案
摘要:今日复习的内容是背包问题。 记得动态规划问题的初始化。 AcWing3382.整数划分 解题思路 考虑到本题是将一个数划分为 的幂的和,而 的 幂是可以无限使用的,所有可以将该问题转化为一个完全背包问题,即背包容量是 ,物品的重量是 。 状态表示:
阅读全文
摘要:一、简述 记录一下组合数的求解问题。 二、组合数 1.[AcWing885.求组合数I]-递推 题目描述 给定 组询问,每组询问给定两个整数 , ,请你输出 的值。 输入格式 第一行包含整数 。 接下来 行,每行包含一组 $a
阅读全文
摘要:一、简述 记录一下关于二叉树的最近公共祖先问题以及朴素算法。 二、二叉树的最近公共祖先 Daimayuan Online Judge.二叉树的最近公共祖先 题目描述 给你一棵 个节点的二叉树,节点的编号为 到 ,二叉树的根为 号节点。 读入 ,请求出
阅读全文
摘要:AcWing200.Hankson的趣味题 题目描述 Hanks 博士是 BT(Bio-Tech,生物技术)领域的知名专家,他的儿子名叫 Hankson。 现在,刚刚放学回家的 Hankson 正在思考一个有趣的问题。 今天在课堂上,老师讲解了如何求两个正整数 和 的最大公约
阅读全文
摘要:一、简述 本节主要介绍一下有关最小生成树的两个算法,即 算法和 算法,适用于无向图。 二、Prim 算法 基本思想 算法有一个适用于稠密图的朴素版,时间复杂度是 ,还有一个适用于稀疏图的堆优化版本,时间复杂度为 ,不
阅读全文
摘要:一、简述 本节主要介绍一下 算法。该算法主要用于解决单源最短路问题,且该问题中的边权不为负数。 二、Dijkstra算法 基本思想:我们假定有一张没有负权的图,该图如下 数组的元素 表示从起点到 的距离,初始化为正无穷。假设起点为 $1
阅读全文
摘要:一、简述 本节介绍一下拓扑排序的应用以及模板。 二、拓扑序 有向无环图,又称拓扑图,而拓扑图一定对应着拓扑序,比如有向图 ,前者指向后者,对应于拓扑序 。基本模板类似 ,如下 初始化队列 queue 所有入度为0的点入 queue whi
阅读全文
摘要:一、简述 本节介绍一下单调队列及其一些应用。 二、单调队列 单调队列就是队列元素满足单调性的一类数据结构,主要用于解决滑动窗口类的问题,即维护一个区间的最值,在应用时时间复杂度是 的。 一般的,如果我们维护区间的最小值,那么维护的队列是单调递增的;如果是维护区间的最大值,那么队列是单调
阅读全文
摘要:一、简述 本节介绍一下单调栈以及单调栈的一些应用。 二、单调栈 所谓单调栈,就是具有存储的元素呈现某种单调性的栈。 比如:从栈底元素到栈顶元素是单调递减的,就是一个单调递减栈。 下面我们引入几道题目来更好的理解一下。 三、例题 1.[AcWing830.单调栈] 题目描述 给定一个长度为 的
阅读全文
摘要:今日的知识点为 (广度优先搜素)。 简要介绍下 算法。首先, 算法适用于边权为 的图论问题。 算法的解题思路也比较固定。确定初始状态,然后对初始状态拓展。大致的解题模板如下 初始化 queue while queue 不空 { t 为队
阅读全文