首页 > 编程语言 >2024年华为OD机试真题- 电脑病毒感染-(C++/Java/python)-OD统一考试(C卷D卷)

2024年华为OD机试真题- 电脑病毒感染-(C++/Java/python)-OD统一考试(C卷D卷)

时间:2024-07-04 18:00:56浏览次数:20  
标签:Java 真题 int 感染 OD 电脑 华为 机试

 2024华为OD机试真题目录-(B卷C卷D卷)-【C++ Java Python】   

题目描述

一个局域网内有很多台电脑,分别标注为 0 ~ N-1 的数字。相连接的电脑距离不一样,所以感染时间不一样,感染时间用 t 表示。

其中网络内一台电脑被病毒感染,求其感染网络内所有的电脑最少需要多长时间。如果最后有电脑不会感染,则返回-1。

给定一个数组 times 表示一台电脑把相邻电脑感染所用的时间。

如图:path[i] = {i, j, t} 表示:电脑 i->j,电脑 i 上的病毒感染 j,需要时间 t。

输入描述

4

3

2 1 1

2 3 1

3 4 1

2

输出描述

2

用例1

输入

4

3

2 1 1

2 3 1

3 4 1

2

输出

2

说明

第一个参数:局域网内电脑个数N,1 ≤ N ≤ 200;

第二个参数:总共多少条网络连接

第三个 2 1 1 表示2->1时间为1

第六行:表示病毒最开始所在电脑号2

考点

dijkstra算法

解题思路

本题是dijkstra算法的题目,可以参考【华为OD机试c++】最长广播效应【2023 B卷|200分】_最长广播效应 od-CSDN博客的解题思路。

代码

c++
#include <bits/stdc++.h>
using namespace std;
 
int main() {
    int n,m;//n电脑个数,m连接数
    cin>>n>>m;
    int hi=10000000;
    vector<vector<int>> mat(n+1,vector<int>(n+1,hi)); //创建邻近矩阵
    for(int i=0;i<m;i++) {
        int a,b,t;
        cin>>a>>b>>t;
        mat[a][

标签:Java,真题,int,感染,OD,电脑,华为,机试
From: https://blog.csdn.net/dijkstra2023/article/details/140098050

相关文章

  • 2024年华为OD机试真题- 找数字-(C++/Java/python)-OD统一考试(C卷D卷)
    2024华为OD机试真题目录-(B卷C卷D卷)-【C++JavaPython】    题目描述小扇和小船今天又玩起来了数字游戏,小船给小扇一个正整数n(1≤n≤1e9),小扇需要找到一个比n大的数字m,使得m和n对应的二进制中1的个数要相同,如:4对应二进制1008对应二进制1000其中1的......
  • Xcode 16 beta 2 (16A5171r) 下载 - Apple 平台 IDE
    Xcode16beta2(16A5171r)-Apple平台IDEIDEforiOS/iPadOS/macOS/watchOS/tvOS/visonOS请访问原文链接:https://sysin.org/blog/apple-xcode-16/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgXcode16的新功能使用预测代码补全功能和更快的预览功能,将奇思......
  • 10分钟带你看完Java架构设计演变
    原文:https://mp.weixin.qq.com/s/LAY8JEn4FJaL06lJtRt4ag关于Java架构方面的面试经常都会被问到,“千万、上亿级别的流量应该我们应该怎么处理”,我之前面试的时候也被问过几次,还被问过以下问题:现在面对业务急剧增长你会怎么处理?业务量突然增长100倍、1000倍怎么处理?怎么来处理......
  • [NodeJS] NodeJS事件循环
    JS是单线程的,如果出现阻塞会严重影响代码执行效率。NodeJS通过事件循环,尽可能地将耗时任务委派给系统内核来实现非阻塞IO。NodeJS提供了许多和异步相关的API,除了语言标准规定的setTimeout和setInterval,还有setImmediate和process.nextTick。经常和这几个出现在面试题里的还有Pr......
  • k8s实战 ---- pod 基础
    如果你对k8s还不了解,可以看下前文k8s实战1----初识    (https://www.cnblogs.com/jilodream/p/18245222)什么是pod,pod在英文中是豌豆荚、分离仓、集装箱的意思。在k8s中,pod就是融合一堆容器实例的一个大容器(称之为集合更贴切)。K8s所能部署的最小单元就是容器,就是pod,一......
  • “Java多线程编程:从Thread到Runnable再到Callable的深入探索“
    1什么是进程?通俗地解释为:计算机中正在执行的一个程序实例。进程它是系统分配资源的基本单位。想象一下,你的电脑就像是一个大工厂,而每一个进程就像是这个工厂里的一条生产线或者一个工作小组,它们各自独立地运行着不同的任务,但同时又受到整个工厂(即操作系统)的管理和调度。......
  • java编译时出现错误[ERROR] 不再支持源选项 5。请使用 6 或更高版本。[ERROR] 不再支
    当我引入一个新项目在控制台输入命令mvn  clean install -U,报错出现原因是我们下载了多个java版本,我的电脑上就有1.8和11两个版本,此时只需在引入的pom文件中指定具体的版本即可<maven.compiler.source>11</maven.compiler.source><maven.compiler.target>11</mave......
  • [University CodeSprint 4] Drawing Rectangles (扫描线 + 最小点覆盖)
    [UniversityCodeSprint4]DrawingRectangles扫描线+最小点覆盖题目的形式一看就是扫描线,观察到矩形的并面积\(\le3\times10^5\),所以可以直接把这些位置找出来。这部分的复杂度是\(O(n\logn)\)。然后剩下的部分就是一个经典的最小点覆盖问题。具体的说,构造二分图,左边代......
  • Java实现简单的冒泡排序
    Java实现简单的冒泡排序核心思想:把相邻的两个数字两两比较,当一个数字大于右侧相邻的数字时,交换他们的位置,当一个数字和他右侧的数字小于或等于的时候,不交换。(小到大排序)例如有数组{3,1,5,7,4,2}第一次排序{3,1,5,7,4,2}//开始{1,3,5,7,4,2}//1和3互换{1,3,5,7,4,2......
  • 深入探索Java IO与NIO:差异与高性能网络编程的应用
    深入探索JavaIO与NIO:差异与高性能网络编程的应用一、引言在Java中,I/O(Input/Output)操作是应用程序与外部世界交互的基本方式。Java标准库提供了多种I/O模型,其中最常用的有传统的I/O(即阻塞I/O)和新引入的NIO(Non-blockingI/O,非阻塞I/O)。随着网络应用的日益复杂和性能要求的......