• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
mengxm
博客园    首页    新随笔    联系   管理    订阅  订阅
2011年8月31日
poj2186
摘要: http://poj.org/problem?id=2186经典强连通分支,求解步骤是用tarjan算法求出强连通分支,然后缩点构成DAG,查看DAG中出度为0的点,若个数不等于1则不存在答案,输出0还可以使用tarjan算法的改进版gabow算法,后者在求解强连通分量的根时采用了更简单的方式tarjan代码View Code 1 #include <stdio.h> 2 #include <memory.h> 3 #define e 50001 4 #define v 10001 5 #define MIN(a,b) ((a)<(b)?(a):(b)) 6 st 阅读全文
posted @ 2011-08-31 00:58 mengxm 阅读(532) 评论(0) 推荐(0)
poj1236
摘要: http://poj.org/problem?id=1236问题A:在网络中需要多少电脑才能使所有学校都有软件,通过强连通算法缩点,构建DAG图,图中一定有入度为0的节点,由于这种节点无法通过别的节点传送软件,所以必须放一台电脑,求出入度为0的节点个数即可。问题B:在该网络中最少添加多少线路,使在任意节点放置电脑所有学校都可以有软件,答案是求入度为0的节点个数和入度为0的节点个数的最大值。证明B:1.以下所有点都是孤立的,连接两个点时,出发的边连接的是起始点中出度为0的点,终点中入度为0的点。(1).定义当点数n=1时,如果是缩点构成的一个点必须添加一条反身边,否则不用添加边。(2).当点数n 阅读全文
posted @ 2011-08-31 00:48 mengxm 阅读(328) 评论(0) 推荐(0)
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3