C C++最全【华为OD】C卷真题200分:服务器广播 C C++代码实现[思路(1),C C++基础语言教程

avatar
作者
猴君
阅读量:1

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

3 

说明

3台服务器互不连接,所以需要分别广播这3台服务器 

示例2输入输出示例仅供调试,后台判题数据一般不包含示例

输入

1 1 1 1 

输出

1 

说明

2台服务器相互连接,所以只需要广播其中一台服务器 

879                                                         
                                                            
              ±–+                                                          
  3            |   |       ++                               +       ±–|   
  |           |   | 3      +                6               +  |   +   |        +
  |      +     |   |       +         +                      +    |  +   |       +
  |      +    |   ±–+    +        +        +++++          +   +  +   |        +
  |      +    | +      |   +   ±—+        |   |          +   +  +   |        +
  |      +  3 | +      |   +   +    +      2 |   |     2    +   +  +   |        +
  |      +    | +      |   +   +    +        |   |          +   +  +   |        +
  |      ±–+ +     |    |  |    +    ----+   |   ±–+    |  |  +   |         +
  |      |     +     |    |  |    +    |       |   |   |    |  |  +   |         +
  |    1 |     +     | 8  |  |    +  1 |   |    | 1 |   | 1 |   |  +   |        +
  |      |     +     |    |  |    +    |   |    |   |   |   |   |  +   |        +
  |  ±–+     +     ±–+   |    +±–+    ++   ±–+   ±–+   |  +   |        +
  |  |         +         |   |    |         ++              |   |  |+   |        +
  |0 |         +         | 0 |  0 |         ++              | 0 |  |+   |        +
  |  |         +         |   |    |         ++              |   |  |+   |        +
  ±–+         +          ±------+                       ±–+| +|+   |        +
                +                                                    +   |        +
    0   1   2   3   4   5   6   7   8   9  10  11  12 + v:    w  u m    u 1 0 2 4

题目解析:

使用递归的方式来实现即可

代码实现:

#include <stdio.h> #include <string.h> #include <stdlib.h> #include <iostream> using namespace std;  #define MAX_NODE   40  int g_arr[MAX_NODE][MAX_NODE]; int g_cnt = 0;  void reset(int *pNode, int idx);  void readfirst() { 	do 	{ 		scanf("%d", &g_arr[0][g_cnt]); 		++g_cnt; 	} while (getchar() != '\n'); }  void readlast() { 	for (int i = 1; i < g_cnt; i++) 	{ 		for (int j = 0; j < g_cnt; j++) 		{ 			scanf("%d", &g_arr[i][j]); 		} 	} }  int main() { 	readfirst(); 	readlast(); 	int *buf = new int[g_cnt]; 	memset(buf, -1, g_cnt * sizeof(int)); 	int total = 0; 	for (int i = 0; i < g_cnt; i++) 	{ 		if (buf[i] == -1) 		{ 			total += 1; 			reset(buf, i); 		} 	}   ![img](https://img-blog.csdnimg.cn/img_convert/d7c4f61723d12471243d52e1a7504012.png) ![img](https://img-blog.csdnimg.cn/img_convert/80eaf95a028e6542000ee1945bfa6aaf.png)  **既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!**  **由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**  **[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618668825)**  正体系化!**  **由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**  **[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618668825)**  

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!