随笔分类 - 算法-图论
摘要:https://www.luogu.com.cn/problem/B3644 有个人的家族很大,辈分关系很混乱,请你帮整理一下这种关系。给出每个人的后代的信息。输出一个序列,使得每个人的后辈都比那个人后列出。 输入格式 第 \(1\) 行一个整数 \(N(1 \le N \le 100)\),表示家
阅读全文
posted @ 2024-05-29 10:17
lipu123
摘要:给你一个二维数组 edges 表示一个 n 个点的无向图,其中\(edges[i] = [u_i, v_i, length_i]\)表示节点\(u_i\)和节点\(v_i\)之间有一条需要 lengthi 单位时间通过的无向边。 同时给你一个数组\(disappear\),其中\(disappear
阅读全文
posted @ 2024-04-18 16:17
lipu123
摘要:https://leetcode.cn/problems/count-pairs-of-connectable-servers-in-a-weighted-tree-network/description/ 给你一棵无根带权树,树中总共有 n 个节点,分别表示 n 个服务器,服务器从 0 到 n -
阅读全文
posted @ 2024-03-07 20:40
lipu123
摘要:二叉树的右视图 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 示例 2: 输入: [1,null,3] 输出: [1,3] 示例 3: 输入: [
阅读全文
posted @ 2023-12-29 17:29
lipu123
摘要:你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 b
阅读全文
posted @ 2023-12-14 11:34
lipu123
摘要:在给定的 m x n 网格 grid 中,每个单元格可以有以下三个值之一: 值 0 代表空单元格; 值 1 代表新鲜橘子; 值 2 代表腐烂的橘子。 每分钟,腐烂的橘子 周围 4 个方向上相邻 的新鲜橘子都会腐烂。 返回 直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1 。
阅读全文
posted @ 2023-12-14 10:50
lipu123
摘要:岛屿数量(连通块) https://leetcode.cn/problems/number-of-islands/description/?envType=study-plan-v2&envId=top-100-liked 给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛
阅读全文
posted @ 2023-12-08 21:49
lipu123
摘要:岛屿数量(连通块) https://leetcode.cn/problems/number-of-islands/description/?envType=study-plan-v2&envId=top-100-liked 给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛
阅读全文
posted @ 2023-12-08 21:33
lipu123
摘要:7-4 疫情防控 (30 分) 传送门 疫情尚未结束,严防疫情反复。为了做好疫情防控工作,国内设置了地区风险等级,对于中高风险地区的人员采取限制移动、居家隔离等手段。 为了研究疫情防控对于跨地区交通运输的影响,假设现在有 N 个机场,M 条航线,每天都会新增一个防控地区,一个防控地区会导致一个机场无
阅读全文
摘要:问题描述 字典 wordList 中从单词 beginWord 和 endWord 的 转换序列 是一个按下述规格形成的序列: 序列中第一个单词是 beginWord 。序列中最后一个单词是 endWord 。每次转换只能改变一个字母。转换过程中的中间单词必须是字典 wordList 中的单词。给你
阅读全文
摘要:题目一 题目描述 Your are given an undirect connected graph.Every edge has a cost to pass.You should choose a path from S to T and you need to pay for all the
阅读全文
摘要:例一: 一个国家有 n 个城市,城市编号为 0 到 n - 1 ,题目保证 所有城市 都由双向道路 连接在一起 。道路由二维整数数组 edges 表示,其中 edges[i] = [xi, yi, timei] 表示城市 xi 和 yi 之间有一条双向道路,耗费时间为 timei 分钟。两个城市之间
阅读全文
摘要:平面上遍布着 n 座城市,编号 1∼n。 第 ii 座城市的位置坐标为 (xi,yi)。 不同城市的位置有可能重合。 现在要通过建立发电站和搭建电线的方式给每座城市都通电。 一个城市如果建有发电站,或者通过电线直接或间接的与建有发电站的城市保持连通,则该城市通电。 在城市 i 建立发电站的花费为 c
阅读全文
摘要:年轻的探险家来到了一个印第安部落里。 在那里他和酋长的女儿相爱了,于是便向酋长去求亲。 酋长要他用 10000 个金币作为聘礼才答应把女儿嫁给他。 探险家拿不出这么多金币,便请求酋长降低要求。 酋长说:”嗯,如果你能够替我弄到大祭司的皮袄,我可以只要 8000 金币。如果你能够弄来他的水晶球,那么只
阅读全文
摘要:哈夫曼树(最优二叉树) 给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。 每次去权值最小的两个,进行合并。这个可以用优先队进行实现的 利用优先队
阅读全文
摘要:这个是一个模型,就是有建立一个超级源点,然后转化为最短路问题 就像上面的图一样就是,就是求右边的一个点到中间的5个点的最短距离,就是选择一个超级源点s,然后连接中间5个点和s他们的权值为0,然后跑一个最短路就解决了, 类似例题1: 视频连接 题目连接 栋栋最近开了一家餐饮连锁店,提供外卖服务。 随着
阅读全文
摘要:题目链接 视频链接 给你一个 n 个点组成的无向图边集 edgeList ,其中 edgeList[i] = [ui, vi, disi] 表示点 ui 和点 vi 之间有一条长度为 disi 的边。请注意,两个点之间可能有 超过一条边 。 给你一个查询数组queries ,其中 queries[j
阅读全文
摘要:这个题就是folyed传递闭包的应用,当然写一个BFS也可以, 这个传递闭包解决的问题是:给你一些边比如A->B->C,表示的是有了A你才能选B,有了B你才能选C,就是给你一个A,C,问 你A是否是选C的条件 代码: void floyd() { for (int i = 1; i <= n; i+
阅读全文
摘要:1.spfa最短路 #include<iostream> #include<algorithm> #include<queue> #include<cstring> using namespace std; const int maxn=1e5+100; typedef pair<int,int>P
阅读全文