好高端DFS,一开始土土的DFS了一下,挂了,想了想,应该是一个公司合并子公司的时候,对某些公司的股份>50了,但是在前面就没办法更新了,然后搞了一下让他从头遍历。然后一直又多加了。。。不知如何乱搞,根本想不清楚,递归起来怎么变化的。本来标记数组在函数内部的,开了个全局的终于乱搞对了。。。

 1 /*
 2  ID: cuizhe
 3  LANG: C++
 4  TASK: concom
 5 */
 6 #include <iostream>
 7 #include <cstdio>
 8 #include <cstring>
 9 #include <cmath>
10 #include <algorithm>
11 using namespace std;
12 int p[101][101],o[101],n,key[101];
13 void dfs(int x)
14 {
15     int i,j;
16     o[x] = 1;
17     for(i = 1; i <= 100; i ++)
18     {
19         if(p[x][i] > 50&&x != i&&!key[i])
20         {
21             if(!o[i]) dfs(i);
22             key[i] = 1;
23             for(j = 1; j <= 100; j ++)
24             {
25                 p[x][j] += p[i][j];
26             }
27             i = 1;
28         }
29     }
30 }
31 int main()
32 {
33     int sv,ev,i,w,j;
34     freopen("concom.in","r",stdin);
35     freopen("concom.out","w",stdout);
36     scanf("%d",&n);
37     for(i = 1; i <= n; i ++)
38     {
39         scanf("%d%d%d",&sv,&ev,&w);
40         p[sv][ev] = w;
41     }
42     for(i = 1; i <= 100; i ++)
43     {
44         if(!o[i])
45         {
46             dfs(i);
47         }
48     }
49     for(i = 1; i <= 100; i ++)
50     {
51         for(j = 1; j <= 100; j ++)
52         {
53             if(p[i][j] > 50&&i != j)
54                 printf("%d %d\n",i,j);
55         }
56     }
57     return 0;
58 }

转载于:https://www.cnblogs.com/naix-x/archive/2012/11/13/2768850.html

USACO 2.3 Controlling Companies(DFS)相关推荐

  1. usaco Controlling Companies

    Controlling Companies 控制公司 有些公司是其他公司的部分拥有者,因为他们获得了其他公司发行的股票的一部分.例如,福特公司 拥有马自达公司 12%的股票.据说,如果至少满足了以下条 ...

  2. [SCOI2005]栅栏(贪心+二分+dfs)难度⭐⭐⭐⭐

    [SCOI2005]栅栏(贪心+二分+dfs) P2329 [SCOI2005]栅栏 题目描述 农夫约翰打算建立一个栅栏将他的牧场给围起来,因此他需要一些特定规格的木材.于是农夫约翰到木材店购买木材. ...

  3. 三十二、图的创建深度优先遍历(DFS)广度优先遍历(BFS)

    一.图的基本介绍 为什么要有图 前面我们学了线性表和树 线性表局限于一个直接前驱和一个直接后继的关系 树也只能有一个直接前驱也就是父节点 当我们需要表示多对多的关系时, 这里我们就用到了图. 图的举例 ...

  4. 【 MATLAB 】离散傅里叶级数(DFS)及 IDFS 的 MATLAB 实现

    有关离散傅里叶级数(DFS)我之前也写过一些博文,例如:离散周期信号的傅里叶级数(DFS) 这里我再次给出标准公式. 分析式: 其中: 综合式: 这里我必须先声明,关于分析式和综合式前面那个系数1/N ...

  5. 部署分布式文件系统(DFS)

    部署分布式文件系统(DFS) 使用 DFS 命名空间,可以将位于不同服务器上的共享文件夹组合到一个或多个逻辑结构的命名空间.每个命名空间作为具有一系列子文件夹的单个共享文件夹显示给用户.但是,命名空间 ...

  6. Java实现算法导论中图的广度优先搜索(BFS)和深度优先搜索(DFS)

    对算法导论中图的广度优先搜索(BFS)和深度优先搜索(DFS)用Java实现其中的伪代码算法,案例也采用算法导论中的图. import java.util.ArrayList; import java ...

  7. 深度优先搜索(DFS)算法

    深度优先搜索(Depth First Search, DFS),在选择DFS算法时,往往是需要"分身",需要不断尝试要完成的事情的情况. DFS算法对每一个可能的分支路径深入到不能 ...

  8. 深度优先搜索(DFS)----------------Tju_Oj_3517The longest athletic track

    这个题主要考察对树的操作,主要思想是DFS或者BFS,其次是找树的直径方法(既要运用两次BFS/DFS),最后作为小白,还练习了vector的操作. DFS框架伪码: bool DSF(Node on ...

  9. 【51Nod - 1416】两点 (dfs 或 并查集+dfs)

    题干: 福克斯在玩一款手机解迷游戏,这个游戏叫做"两点".基础级别的时候是在一个n×m单元上玩的.像这样:     每一个单元有包含一个有色点.我们将用不同的大写字母来表示不同的颜 ...

  10. 【PAT - 甲级 - 1018】Public Bike Management (带权最短路,多条最短路中加条件,DFS)

    题干: 链接:https://www.nowcoder.com/questionTerminal/4b20ed271e864f06ab77a984e71c090f 来源:牛客网 There is a ...

最新文章

  1. as安装过程中gradle_柯赛分享:楼顶大字安装过程中需要用到哪些工具?
  2. mariadb-10实现半同步复制及SSL安全复制
  3. 哪些是能安装mysql的文件_安装mysql详细步骤有哪些?
  4. WD1600AAJS AAKS 固件 数据恢复
  5. Scala类中的+方法
  6. 基于VMware vSphere 5 企业虚拟化部署之六:VMware Center管理ESXi和配置资源池
  7. scrapy newspaper bug
  8. UVa 1635 无关的元素(唯一分解定理+二项式定理)
  9. python教程视频-有没有适合零基础小白学的python教程,视频或者书籍都可以?
  10. 蚂蚁课堂视频笔记思维导图-4期 三、消息中间件
  11. 线性规划中的灵敏度分析
  12. matlab车牌识别错误,matlab车牌识别调入切割函数后就不出图了?也没有显示错误...
  13. [HITSC]哈工大2020春软件构造Lab3实验报告
  14. 一文搞懂AWS EC2, IGW, RT, NAT, SG 基础篇下
  15. 工业物联网有什么特征
  16. CVPR 2021 论文大盘点-人脸造假检测篇
  17. 中国移动规范学习——4A技术要求(综述)
  18. C#汽车租凭(面对对象(封装、继承,多态的应用))
  19. Pandas基础教程
  20. SQL将两列合并为一列

热门文章

  1. 线段树、前缀数组:HDU1591-Color the ball(区间更新、简单题)
  2. FZU 2128 最长子串
  3. linux安装vmware出现Gtk-Message: Failed to load module pk-gtk-module canberra-gtk-module的解决方法...
  4. Flutter 基础Widgets之容器Container详解
  5. iOS开发规范篇:清晰的初始化方法
  6. 构建Docker镜像仓库的另一选择:Nexus3 - DockOne.io
  7. 《第三方JavaScript编程》——1.4 第三方开发的挑战
  8. javascript的对象 和 JSON 对象?
  9. MS-SQL数据类型详解
  10. 1.凤凰架构:构建可靠的大型分布式系统 --- 服务架构演进史