• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
magicat
博客园    首页    新随笔    联系   管理    订阅  订阅

随笔分类 -  图论

Educational Codeforces Round 15 A - E

摘要:# [Educational Codeforces Round 15](https://codeforces.com/contest/702) [TOC] ## [A - Maximum Increase](https://codeforces.com/contest/702/problem/A) 阅读全文
posted @ 2023-09-01 21:31 magicat 阅读(32) 评论(0) 推荐(0)
AtCoder Beginner Contest 302 ABCDEF

摘要:[AtCoder Beginner Contest 302](https://atcoder.jp/contests/abc302) ![image](https://img2023.cnblogs.com/blog/2458891/202306/2458891-20230621162021815- 阅读全文
posted @ 2023-06-21 16:20 magicat 阅读(48) 评论(0) 推荐(0)
AtCoder Beginner Contest 304 ABCDEF

摘要:[AtCoder Beginner Contest 304](https://atcoder.jp/contests/abc304) ![image](https://img2023.cnblogs.com/blog/2458891/202306/2458891-20230604120319565- 阅读全文
posted @ 2023-06-04 12:05 magicat 阅读(134) 评论(6) 推荐(1)
2021四川省赛

摘要:[The 2021 Sichuan Provincial Collegiate Programming Contest](https://codeforces.com/gym/103117 "The 2021 Sichuan Provincial Collegiate Programming Con 阅读全文
posted @ 2023-05-24 17:51 magicat 阅读(114) 评论(0) 推荐(0)
个人模板

摘要:Math & DP & Data structure & Graph & Geometry & Game 表演者: magicat 💕 nannan 目录 Math & DP & Data structure & Graph & Geometry & GameHead快读1快读2快读3模板1模板2 阅读全文
posted @ 2023-05-09 17:12 magicat 阅读(562) 评论(1) 推荐(1)
D. Solve The Maze

摘要:D. Solve The Maze 大意:建墙让所有好人可以到达坐标$(n,m)$,任何一个坏人都不能到达坐标$(n,m)$ 分析: 把坏人直接关起来,在坏人的四面建墙, 统计好人的人数 从坐标$(n,m)$去遍历,整个地图,看能不能遇到所有好人 3可以通过dsu, flood-fill等去做吧 细 阅读全文
posted @ 2023-04-21 16:59 magicat 阅读(45) 评论(0) 推荐(0)
湖南省第十八届大学生计算机程序设计竞赛(HNCPC2022)VP记录

摘要:随便记录下 湖南省第十八届大学生计算机程序设计竞赛(HNCPC2022) 官方题解 VP情况 队友卡I占了机时导致罚时有点爆炸,也是策略的失误 6题837罚时 补到GH就不补个位数题 J 判断斐波那契区间有没有一段的和等于$n$ 由于$n \leq 10^{15}$直接暴力即可 #include<b 阅读全文
posted @ 2023-04-17 11:35 magicat 阅读(1506) 评论(0) 推荐(0)
E. Gardener and Tree 拓扑排序板子

摘要:E. Gardener and Tree 将度为1的顶点加入队列,做拓扑排序,记录点的遍历层次,答案为 n-前k层的点的数量 // AC one more times void solve() { int n; cin>>n; int k; cin>>k; int st[n+10];memset(s 阅读全文
posted @ 2022-07-30 20:03 magicat 阅读(48) 评论(0) 推荐(0)
P1347 排序

摘要:P1347 排序 通过给出的关系,去确定大写字母的关系,并打印出 步骤: 先将关系存下来。见题意,不可能建完图再遍历因为确定 n 个元素的顺序后即可结束程序,可以不用考虑确定顺序之后出现矛盾的情况) 1~m条边,每在图上建一条边就检查当前图是否确定n个元素的关系,亦或者图是否存在矛盾(有环的情况,自 阅读全文
posted @ 2022-07-30 17:21 magicat 阅读(78) 评论(0) 推荐(0)
P2853 [USACO06DEC]Cow Picnic S

摘要:P2853 [USACO06DEC]Cow Picnic S 和这道差不多P3916 图的遍历,图的遍历通过方向建边使子节点被标记最大编号。这题可以通过奶牛找牧场 分析:从奶牛的位置开始dfs,对每个被dfs的点进行标记,最后统计有多少个点的标记的数量等于奶牛的值。 代码: #include<ios 阅读全文
posted @ 2022-07-30 16:51 magicat 阅读(34) 评论(0) 推荐(0)
P1127 词链 欧拉图,欧拉回路,欧拉通路

摘要:P1127 词链 欧拉通路: 有向图:图连通,一个顶点 出度-入度=1 此点为起点,一个顶点 入度-出度=1 此点为终点,其余点入度=出度 无向图:图连通,只有两个顶点为奇数度,其余都是偶数度 关于欧拉通路度数判断: int x=0,y=0,z=0; for(int i=1;i<=n;i++) { 阅读全文
posted @ 2022-07-30 16:41 magicat 阅读(98) 评论(0) 推荐(0)
P1807 最长路

摘要:P1807 最长路 在DAG上拓扑排序dp,题目数据没有环 分析: f[v]=max(f[v],f[u]+value[u][i]; #include<iostream> #include<cstring> #include<vector> #include<set> #include<map> #i 阅读全文
posted @ 2022-07-30 16:14 magicat 阅读(24) 评论(0) 推荐(0)
P4017 最大食物链计数

摘要:P4017 最大食物链计数 建图,食物链从 入度为0的点 到 出度为0的点 为一条完整的食物链 在DAG上拓扑排序dp,每个结点 有多少种方式 从入度为0的点到达表示为 f[v]+=f[u] u->v 当遍历到的点出度为0就将 f[v] 的值加入答案 #include<iostream> #incl 阅读全文
posted @ 2022-07-30 16:10 magicat 阅读(175) 评论(0) 推荐(0)
P1113 杂务

摘要:P1113 杂务 一题多解 一开始建图来写,写错了,发现有递推关系,写了下就对了,后面把拓扑排序的写法调了出来 递推1: 分析:第u个杂物做之前和第1~k-1个杂物存在关系,我们只需要找到 要在第u个杂物做之前 找到存在关系的最大完成的杂物时间 就能推出公式,f[u]=a[u]+max(len[v] 阅读全文
posted @ 2022-07-30 16:04 magicat 阅读(108) 评论(0) 推荐(0)
P3916 图的遍历

摘要:P3916 图的遍历 题意:求各个点所能到达最大的编号 按正常情况去遍历图,会超时和爆内存,得到20分(起码我只拿了20) 换个思路来求,编号大的地点可以到达哪些点 思路: 反向建边 从编号大的点开始dfs,dfs传递初始编号d,这是遍历到的点的答案 若当前点被访问过了说明被更大的点访问过了,遂re 阅读全文
posted @ 2022-07-30 15:53 magicat 阅读(81) 评论(0) 推荐(0)
P5318 【深基18.例3】查找文献

摘要:原题地址:P5318 【深基18.例3】查找文献 根据描述和样例 分析如下: 先对 边 u->v 排一个序,满足字典序的需求 dfs和bfs 都要记录当前点是否已经被访问过了,若之前没被访问过,继续dfs或bfs。防止出现重复访问 代码如下: #include<iostream> #include< 阅读全文
posted @ 2022-07-30 15:47 magicat 阅读(346) 评论(0) 推荐(0)
DAG(有向无环图)拓扑排序 模板

摘要:应用: 判断有向图是否存在环 代码源图论初级课程题单报名免费 求一个图的拓扑序 在2.的基础上求字典序最小拓扑序,优先队列实现 拓扑排序板子: 选择入度为0的点作为起始点 // d代表入度,用vector存的图 void toposort() { queue<int> q; for(int i=1; 阅读全文
posted @ 2022-07-30 15:31 magicat 阅读(162) 评论(0) 推荐(0)

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3