03 2021 档案
发表于 2021-03-30 23:29阅读:60评论:0推荐:0
摘要:CodeCraft-21 and Codeforces Round #711 (Div. 2) A题 GCD Sum 原题链接 题意: 给定, 求最小的使得, 等于的各位之和 思路: 暴力 #include <iostre
阅读全文 »
发表于 2021-03-30 00:26阅读:69评论:0推荐:0
摘要:Codeforces Round #709 (Div. 2, based on Technocup 2021 Final Round) A题 Prison Break 原题链接 题意: 给定一个的方格阵, 要求打通最少的墙, 使得从每个格子出发都可以走到边缘。 思路: 要求从
阅读全文 »
发表于 2021-03-26 13:37阅读:104评论:0推荐:0
摘要:Educational Codeforces Round 106 (Rated for Div. 2) A题 Domino on Windowsill 原题链接 题意 给定一个 的网格, 第一行前个和第二行前个格子为白色, 其余格子为黑色. 现在给定个$2
阅读全文 »
发表于 2021-03-26 13:35阅读:48评论:0推荐:0
摘要:并查集 基本概念 并查集是一种树型的数据结构,用于处理一些不相交集合(disjoint sets)的合并及查询问题。(摘自百度百科) 基本操作 初始化 将每个结点的父结点初始化为自己, 此时有 个集合, 每个集合内有 个元素。 根据题目要求, 并查集内可能维护不同内容, 需要
阅读全文 »
发表于 2021-03-26 13:34阅读:55评论:0推荐:0
摘要:Codeforces Round #708 (Div. 2) 没有正式参加~~(又划水)~~, 这场比赛unrated。 从比赛结果看, 题目似乎不是很难. A题 Meximization 原题链接 题意: 给定一个数组, 对该数组重新排序得到, 使得$\sum_^NMEX(b_{1}.
阅读全文 »
发表于 2021-03-17 23:55阅读:139评论:0推荐:0
摘要:有向图的强连通分量 基本概念 连通分量: 对于分量内任意两点 , 必然可以找到从 走到 且可以从 走到 . 强连通分量: 极大连通分量(包含点数最多) 强连通分量常用于缩点 Tarjan算法: 基于 : Tarjan算法几个
阅读全文 »
发表于 2021-03-17 00:25阅读:76评论:0推荐:0
摘要:最小生成树基础 定义 对于图 , 有 个点, 条边, 由 中所有 个点和 中 条边构成的一个连通子图(即一棵树),称为 的一个生成树, 边权值最小的为最小生成树. 求解方法: prim算
阅读全文 »
发表于 2021-03-17 00:18阅读:68评论:0推荐:0
摘要:单源最短路算法 Dijkstra算法 只能求解非负边权的图中最短路 朴素Dijkstra 常用于稠密图,时间复杂度: #include <iostream> #include <queue> #include <cstring> using namespace std; con
阅读全文 »
发表于 2021-03-16 20:46阅读:61评论:0推荐:0
摘要:DFS DFS:深度优先搜索,不断向深层搜索,搜索至叶子节点后返回. DFS基础应用: DFS 连通性模型 DFS 搜索顺序 DFS 剪枝与优化 迭代加深 双向DFS IDA* 关于是否回溯: 对于图内的点的搜索,需要对每个点全部遍历一遍时,不需要回溯. 对于图的不同状态进行搜索时,每搜索一个状态结
阅读全文 »
发表于 2021-03-16 20:43阅读:64评论:0推荐:0
摘要:BFS 宽度优先搜索: 对每个搜索到的结点向外扩展,每次搜索一层的子节点. 特点: 对于边权相等的图,可以求最短路. BFS基本模板: void bfs() { queue<int> q; st[1] = 1; //从一号点开始 q.push(1); while (q.size()){ int u
阅读全文 »
发表于 2021-03-16 20:39阅读:30评论:0推荐:0
摘要:线段树 基本概念: 线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。(摘自百度百科) 线段树是一种完全二叉树,支持操作: 单点修改, 区间查询 区间修改, 单点查询 区间修改, 区间查询 线段树的基本操作: 建树操作(build): 每次向
阅读全文 »