随笔分类 -  acwing

冲!多多学习!
摘要:https://www.acwing.com/problem/content/4493/ 题意就是给你每个点的父节点的编号,初始颜色是0,然后把每个点颜色给你,每一次染色都可以把其及其子树染成和它一样的,问变成对应的颜色至少需要操作多少次 树啥的好像没有我想的那么复杂... 我也不清楚,还是多做做题 阅读全文
posted @ 2022-07-03 16:04 小志61314 阅读(129) 评论(0) 推荐(0) 编辑
摘要:这题我没看见数据范围,就直接写了,其实思路差不多,把所有相等的放在一个集合里面,然后看看不等的,在不在同一个集合里面,在就是no,不在就是yes但是这个数据范围是1e9,直接做空间不够用,但是n就是数的总个数才2e5个,所以可以想到离散化,离散化有两种:保序和不保序的,保序的看看基础课吧,我忘记了Q 阅读全文
posted @ 2022-06-10 13:46 小志61314 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题意就是给你科学家的语言和电影的语言和字幕的编号 可以用STL做,但是锻炼一下离散化吧 #include<iostream> #include<vector> #include<algorithm> #include<set> using namespace std; const int N=1e6 阅读全文
posted @ 2022-06-10 13:32 小志61314 阅读(30) 评论(0) 推荐(0) 编辑
摘要:这个就要求没有重复的,可以按照字典序来输出,保证一定后面的数字比前面的数字要大,自然就没有重复的数字了,这个时候连判重也不需要了 https://www.acwing.com/activity/content/record/19/1/ #include<iostream> using namespa 阅读全文
posted @ 2022-04-02 13:23 小志61314 阅读(22) 评论(0) 推荐(0) 编辑
摘要:给定一个 nn 个点 mm 条边的有向图,图中可能存在重边和自环, 边权可能为负数。 请你求出 11 号点到 nn 号点的最短距离,如果无法从 11 号点走到 nn 号点,则输出 impossible。 数据保证不存在负权回路。 输入格式 第一行包含整数 nn 和 mm。 接下来 mm 行每行包含三 阅读全文
posted @ 2022-03-22 21:22 小志61314 阅读(31) 评论(0) 推荐(0) 编辑
摘要:应用于有负权值的求最短路 思路: 进行n次迭代,每一次对边进行遍历,然后更新(松弛操作) dist[b]=min(dist[b],dist[a]+w)dist代表了某个点距离起点的距离 也可以用此算法来判断有无负环,因为如果有负环那最小值经过不断迭代会变成无穷小 有一点点像dijkstra算法 在结 阅读全文
posted @ 2022-03-22 17:43 小志61314 阅读(232) 评论(0) 推荐(0) 编辑
摘要:、 从 1∼n1∼n 这 nn 个整数中随机选取任意多个,输出所有可能的选择方案。 输入格式 输入一个整数 nn。 输出格式 每行输出一种方案。 同一行内的数必须升序排列,相邻两个数用恰好 11 个空格隔开。 对于没有选任何数的方案,输出空行。 本题有自定义校验器(SPJ),各行(不同方案)之间的顺 阅读全文
posted @ 2022-03-20 23:07 小志61314 阅读(54) 评论(0) 推荐(0) 编辑
摘要:dijkstra算法: 图的存储: 稀疏图可以用邻接表来存 稠密图可以用邻接矩阵来存 这个算法基于稠密图,所以应该用邻接矩阵来存 算法思想: 创建一个集合s表示所有确定下来最短距离的点 用t来表示没有确定下来最短距离的点 用完t之后,把t放入s 然后一次次的迭代更新,保证每一个点到起点的距离都是最短 阅读全文
posted @ 2022-03-15 19:48 小志61314 阅读(40) 评论(0) 推荐(0) 编辑
摘要:有环的有向图一定不是拓扑序列,因为不管怎么样,一定有序列指向前面 并且可以证明,有向无环图一定可以构成拓扑序列 是我见识太少了,有点像线性宽搜哈哈哈 给定一个 nn 个点 mm 条边的有向图,点的编号是 11 到 nn,图中可能存在重边和自环。 请输出任意一个该有向图的拓扑序列,如果拓扑序列不存在, 阅读全文
posted @ 2022-03-14 20:24 小志61314 阅读(372) 评论(0) 推荐(0) 编辑
摘要:回顾一下宽搜的板子: 上一下走迷宫的代码,对照一下这个板子,一目了然 #include<iostream> #include<algorithm> #include<cstring> #include<queue> using namespace std; typedef pair<int,int> 阅读全文
posted @ 2022-03-13 18:48 小志61314 阅读(65) 评论(0) 推荐(0) 编辑
摘要:在上正题之前咱们就先浅浅的介绍一下: 树是一种特殊的图,一个无环连通图 图:有向图、无向图 有向图:a >b 无向图a b,既可以从a到b,也可以从b到a,所以无向图也可以称为是特殊的有向图 可以构建类似于有向图,a—>b,b—>a; 有向图的存储: ①邻接矩阵:不能存储重边,比较浪费空间,适合存稠 阅读全文
posted @ 2022-03-11 17:14 小志61314 阅读(103) 评论(0) 推荐(0) 编辑
摘要:bfs是宽搜,可以用来求边权是1的最短路,先上例题吧 给定一个 n×mn×m 的二维整数数组,用来表示一个迷宫,数组中只包含 00 或 11,其中 00 表示可以走的路,11 表示不可通过的墙壁。 最初,有一个人位于左上角 (1,1)(1,1) 处,已知该人每次可以向上、下、左、右任意一个方向移动一 阅读全文
posted @ 2022-03-09 23:13 小志61314 阅读(168) 评论(0) 推荐(0) 编辑
摘要:dfs我琢磨了两天,终于理解了不少,在这里感谢一位大佬!! 好啦,现在咱们来说一下dfs dfs是深度优先搜索,俗话说不撞南墙不回头。各种定义和含义网上都有,这里不赘述了 直接上题然后根据数据模拟一下: 给定一个整数 nn,将数字 1∼n1∼n 排成一排,将会有很多种排列方法。 现在,请你按照字典序 阅读全文
posted @ 2022-03-08 23:10 小志61314 阅读(173) 评论(0) 推荐(0) 编辑
摘要:堆的作用: 堆的定义和堆的性质: 堆是一个完全二叉树,完全二叉树除了最后一层,其他层都是非空结点 小根堆:所有的父节点小于等于左右两个儿子,那就是在整棵树中,根节点是最小的 存储:用一维数组来存,1号点为根节点 down和up的操作: 应用原理:所有的父节点<=两个子节点 down是往下操作,up是 阅读全文
posted @ 2022-03-06 14:15 小志61314 阅读(41) 评论(0) 推荐(0) 编辑
摘要:并查集的作用: ①合并两个集合 ②查询两个元素是否在一个集合中 实现形式: 用树的形式来维护所有的集合 根节点的编号等于当前集合的编号 对于每一个点存储一它的父结点,p[x]表示x的父结点 对于一个点是否在一个集合中,从这个点往上找,找对应的父结点,最后找到树根这个点,树根的编号就是集合的编号、 问 阅读全文
posted @ 2022-03-03 17:43 小志61314 阅读(89) 评论(0) 推荐(0) 编辑
摘要:贴一个大佬的博客 https://www.acwing.com/solution/content/14695/ Trie树长这样: 这个是Trie树的存储 来自acwing的y总笔记 使用Trie这个数据结构一般题目只有小写字母或者大写字母或者数字等等形式比较单一 然后在每个单词的结尾最后标记一下, 阅读全文
posted @ 2022-03-02 15:09 小志61314 阅读(112) 评论(0) 推荐(0) 编辑
摘要:http://www.ruanyifeng.com/blog/2013/05/Knuth%E2%80%93Morris%E2%80%93Pratt_algorithm.html https://www.acwing.com/solution/content/23907/ 先上两个大佬的博客 能懂基本 阅读全文
posted @ 2022-03-01 20:51 小志61314 阅读(117) 评论(0) 推荐(0) 编辑
摘要:给定 NN 个闭区间 [ai,bi][ai,bi],请你在数轴上选择若干区间,使得选中的区间之间互不相交(包括端点)。 输出可选取区间的最大数量。 输入格式 第一行包含整数 NN,表示区间数。 接下来 NN 行,每行包含两个整数 ai,biai,bi,表示一个区间的两个端点。 输出格式 输出一个整数 阅读全文
posted @ 2022-02-27 23:45 小志61314 阅读(157) 评论(0) 推荐(1) 编辑
摘要:说句题外话:今天2.27,立志在3.5号把基础课的贪心,dp看完,3.15号把数据结构和数学看完,然后看搜索!hhh,加油 给定 NN 个闭区间 [ai,bi][ai,bi],请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。 输出选择的点的最小数量。 位于区间端点上的点也算作区间内。 阅读全文
posted @ 2022-02-27 23:22 小志61314 阅读(98) 评论(0) 推荐(0) 编辑
摘要:求一个数约数的个数 试除法求约数: 给定 nn 个正整数 aiai,对于每个整数 aiai,请你按照从小到大的顺序输出它的所有约数。 输入格式 第一行包含整数 nn。 接下来 nn 行,每行包含一个整数 aiai。 输出格式 输出共 nn 行,其中第 ii 行输出第 ii 个整数 aiai 的所有约 阅读全文
posted @ 2022-02-22 15:08 小志61314 阅读(342) 评论(0) 推荐(0) 编辑

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