摘要: 题意:就是恢复成1,2,3,4,5,6,7,8,0; 分析:暴力BFS预处理,所有路径,用康拓展开判重,O(1)打印 93ms 还是很快的 #include <iostream> #include <cstdio> #include <vector> #include <cstring> #incl 阅读全文
posted @ 2016-03-06 17:43 shuguangzw 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 题意:bc round 74 div1 分析: 考虑删掉的边的形态, 就是我们经常见到的环套树这种结构, 参考平时这种图给出的方法, 如果一个图的每个点的出边只有一条, 那么一定会构成环套树这种结构. 于是问题可以转化成, 给无向图的每条边定向, 使得出度最大点的出度最小 (每个点的出度大小对应了删 阅读全文
posted @ 2016-03-06 12:23 shuguangzw 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 题意:bc round 74 分析(官方题解): 你可以选择分类讨论, 但是估计可能会写漏一些地方. 只要抽出新增边的端点作为关键点, 建立一个新图, 然后跑一遍floyd就好了. 复杂度大概O(6^2m) 注:然后我不会这种,这种floyd我觉得复杂度应该是复杂度应该是O(8^3m) 大概在千万级 阅读全文
posted @ 2016-03-06 11:15 shuguangzw 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 题意:bc round 74 分析: 参考下普通的用堆维护求字典序最小拓扑序, 用某种数据结构维护入度小于等于k的所有点, 每次找出编号最小的, 并相应的减少k即可. 这个数据结构可以用线段树, 建立一个线段树每个节点[l,r]维护编号从ll到rr的所有节点的最小入度, 查询的时候只需要在线段树上二 阅读全文
posted @ 2016-03-06 11:00 shuguangzw 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 题意:bc round 74 div1 1002 中文题 分析(官方题解):注意到答案实际上只和s⊕t有关, bfs预处理下从0到xx的最短步数, 然后查询O(1)回答即可. #include <iostream> #include <cstdio> #include <vector> #inclu 阅读全文
posted @ 2016-03-06 10:36 shuguangzw 阅读(179) 评论(0) 推荐(0) 编辑