首页 > 其他分享 >计蒜客:互粉攻略(DFS/BFS)

计蒜客:互粉攻略(DFS/BFS)

时间:2024-11-04 19:30:16浏览次数:1  
标签:degree int graph DFS BFS ++ dfs visited 计蒜客

 因为有重复数据,所以不得不等输入完以后再进行有向图的遍历。

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int n, m;
 4 set<int> graph[1005];
 5 vector<bool> visited(1005, false);
 6 vector<pair<int, int>> degree(1005, make_pair(0, 0)); //(入度,出度)
 7 void dfs(int p) {
 8     visited[p] = true;
 9     degree[p].second = graph[p].size();
10     for (auto i : graph[p]) {
11         degree[i].first++;
12         if (!visited[i]) {
13             dfs(i);
14         }
15     }
16 }
17 int main() {
18     cin >> n >> m;
19     int a, b;
20     while (m --) {
21         cin >> a >> b;
22         graph[a].insert(b);
23     }
24     for (int i = 0; i < n; ++i) {
25         if (!visited[i]) {
26             dfs(i);
27         }
28     }
29     for (int i = 0; i < n; ++i) {
30         cout<<degree[i].first - degree[i].second<<endl;
31     }
32 }

 

标签:degree,int,graph,DFS,BFS,++,dfs,visited,计蒜客
From: https://www.cnblogs.com/coderhrz/p/18526055

相关文章

  • 大数据导论及分布式存储HadoopHDFS入门
    思维导图数据导论数据是什么?进入21世纪,我们的生活就迈入了"数据时代"作为21世纪的新青年,"数据"一词经常出现。数据无时无刻的在影响着我们的现实生活什么是数据?数据又如何影响现实生活?数据:一种可以被鉴别的对客观事件进行记录的符号。简单来说就是:对人类的行为......
  • 迷宫问题(最短路径)——分别用DFS、BFS解决
    目录问题描述利用DFS(深度优先搜索)求解利用BFS(广度优先搜索)求解问题描述定义一个二维数组N*M,如5 × 5数组下所示:int maze[5][5] = {0, 1, 0, 0, 0,0, 1, 1, 1, 0,0, 0, 0, 0, 0,0, 1, 1, 1, 0,0, 0, 0, 1, 0,};它表示一个迷宫,其中的......
  • 头歌Flume 第2关 采集目录下所有新文件到Hdfs
    #配置source,channel,sink名称a1.sources=source1a1.sinks=sink1a1.channels=channel1#配置sourcea1.sources.source1.type=spooldira1.sources.source1.spoolDir=/opt/flume/data##定义文件上传完后的后缀,默认是.COMPLETEDa1.sources.source1.......
  • Spark Streaming监听HDFS文件(Spark-shell)
    需求:编写程序利用SparkStreaming监控HDFS 目录/input目录下的文件,并对上传的文件进行词频统计。首先,linux中需要有netcat,来实现监听功能,有的linux会自带这个软件,可以用下面的命令测试一下,如果不报错就没问题,Ctrl+z可以退出nc-l9999没有netcat的可以用这个来下载,如果......
  • HDFS的读写流程
    HDFS的读写流程写数据1、宏观1、客户端发起请求到NameNode,调用Hadoop中的一个类叫做DistributedFileSystem创建对象,再利用这个对象通过RPC通信协议调用NameNode去创建一个没有blocks关联的新文件。在创建之前NameNode会做各种校验:比如该文件是否存在,客户端有无权限去创建.........
  • BFS和DFS算法全面解析【算法入门】
    1.前言和树的遍历类似,图的遍历也是从图中某点出发,然后按照某种方法对图中所有顶点进行访问,且仅访问一次。但是图的遍历相对树而言要更为复杂。因为图中的任意顶点都可能与其他顶点相邻,所以在图的遍历中必须记录已被访问的顶点,避免重复访问。根据搜索路径的不同,我们可以将遍......
  • 孤岛的总面积(Dfs C#
    卡码网 101题  力扣第1254.统计封闭岛屿的数目 也是一样的差不多是一道题  101.孤岛的总面积题目描述给定一个由1(陆地)和0(水)组成的矩阵,岛屿指的是由水平或垂直方向上相邻的陆地单元格组成的区域,且完全被水域单元格包围。孤岛是那些位于矩阵内部、所有单元格都......
  • 洛谷(DFS)-P2089 烤鸡详解
    提前说一下,做完才发现要先输出方案数而后才打印方案数,所以代码不能直接搬动提交,你可以建立个字符串存储一下.先上代码,看不懂的再看下面的详解:#include<iostream>#include<bits/stdc++.h>usingnamespacestd;constintN=20;intn;intac[N];//方案存储intres......
  • Flink历史服务器History Server部署:创建hdfs存储目录、启动和停止
    运行Flinkjob的集群一旦停止,只能去yarn或本地磁盘上查看日志,不再可以查看作业挂掉之前的运行的WebUI,很难清楚知道作业在挂的那一刻到底发生了什么。如果我们还没有Metrics监控的话,那么完全就只能通过日志去分析和定位问题了,所以如果能还原之前的WebUI,我们可以通......
  • BFS + 优先队列
    问题2:走迷宫升级版——边的权值不同单点时限:2.0sec内存限制:256MB一天,sunny不小心进入了一个迷宫,不仅很难寻找出路,而且有的地方还有怪物,但是sunny有足够的能力杀死怪物,但是需要一定的时间,但是sunny想早一点走出迷宫,所以请你帮助他计算出最少的时间走出迷宫,输出这个......