最新华为上机考试

真题目录:点击查看目录
华为OD面试真题精选:点击立即查看
2025华为od机试2025C卷-华为OD上机考试2025年C卷

题目描述

为了达到新冠疫情精准防控的需要,为了避免全员核酸检测带来的浪费,需要精准圈定可能被感染的人群。

现在根据传染病流调以及大数据分析,得到了每个人之间在时间、空间上是否存在轨迹的交叉。

现在给定一组确诊人员编号 (X1,X2,X3,…Xn)在所有人当中,找出哪些人需要进行核酸检测,输出需要进行核酸检测的数。

(注意:确诊病例自身不需要再做核酸检测)需要进行核酸检测的人,是病毒传播链条上的所有人员,即有可能通过确诊病例所能传播到的所有人。

例如:A是确诊病例,A和B有接触、B和C有接触 C和D有接触,D和E有接触。那么B、C、D、E都是需要进行核酸检测的人

输入描述

第一行为总人数N

第二行为确证病例人员编号(确证病例人员数量<N),用逗号隔开

接下来N行,每一行有N个数字,用逗号隔开,其中第i行的第j个数字表名编号i是否与编号j接触过。0表示没有接触,1表示有接触

备注:

人员编号从0开始

0 < N < 100 0<N<1000<N<100

输出描述

输出需要做核酸检测的人数

用例

输入

5
1,2
1,1,0,1,0
1,1,0,0,0
0,0,1,0,1
1,0,0,1,0
0,0,1,0,1

输出

3

说明

编号为1、2号的人员为确诊病例
1号与0号有接触,0号与3号有接触,2号与4号有接触。所以,需要做核酸检测的人是0号、3号、4号,总计3人要进行核酸检测。