华为机考--服务失效判断--带答案
新2023年华为OD真题机考题库大全-带答案(持续更新)or2023华为OD统一考试(A+B卷)题库清单-带答案(持续更新)
题目描述
某系统中有众多服务,每个服务用字符串(只包含字母和数字,长度<=10)唯一标识,服务间可能有依赖关系,如A依赖B,则当B故障时导致A也故障。
依赖具有传递性,如A依赖B,B依赖C,当C故障时导致B故障,也导致A故障。
给出所有依赖关系,以及当前已知故障服务,要求输出所有正常服务。
依赖关系:服务1-服务2 表示“服务1”依赖“服务2”
不必考虑输入异常,用例保证:依赖关系列表、故障列表非空,且依赖关系数,故障服务数都不会超过3000,服务标识格式正常。
输入描述:
半角逗号分隔的依赖关系列表(换行)
半角逗号分隔的故障服务列表
输出描述:
依赖关系列表中提及的所有服务中可以正常工作的服务列表,用半角逗号分隔,按依赖关系列表中出现的次序排序。
特别的,没有正常节点输出单独一个半角逗号。
示例1 输入输出示例仅供调试,后台判题数据一般不包含示例
输入
a1-a2,a5-a6,a2-a3
a5,a2输出
a6,a3
说明
a1依赖a2,a2依赖a3,所以a2故障,导致a1不可用,但不影响a3;a5故障不影响a6。
所以可用的是a3、a6,在依赖关系列表中a6先出现,所以输出:a6,a3。
示例2 输入输出示例仅供调试,后台判题数据一般不包含示例
输入
a1-a2
a2输出
,
说明
a1依赖a2,a2故障导致a1也故障,没有正常节点,输出一个逗号。
public class ServiceFailure {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String[]services = sc.nextLine().split(",");String[]error = sc.nextLine().split(",");//用Map来存储依赖关系Map<String,String> ser = new LinkedHashMap<>();for (int i = 0; i < services.length; i++){String[]equ = services[i].split("-");ser.put(equ[0], equ[1]);}check(ser,error);}public static void check(Map<String,String> ser,String[] error){for (int i = 0; i < error.length; i++){String errorequ = error[i];//移除坏的设备Iterator<Map.Entry<String,String>> it = ser.entrySet().iterator();while (it.hasNext()){Map.Entry<String,String> entry = it.next();if (entry.getValue().equals(errorequ)){it.remove();}}//保证不了按输入顺序排序/* ser = ser.entrySet().stream().filter(entry -> !entry.getValue().equals(errorequ)).collect(Collectors.toMap(Map.Entry::getKey,Map.Entry::getValue));*/}//a1-a2,a5-a6,a2-a3 a5,a2//输出正常的服务器号if (ser.size() == 0){System.out.println(",");}else {Iterator<Map.Entry<String,String>> it = ser.entrySet().iterator();while (it.hasNext()){Map.Entry<String,String> entry = it.next();System.out.print(entry.getValue());if (!it.hasNext()){break;}System.out.print(",");}}}
}
相关文章:
华为机考--服务失效判断--带答案
新2023年华为OD真题机考题库大全-带答案(持续更新)or2023华为OD统一考试(AB卷)题库清单-带答案(持续更新) 题目描述 某系统中有众多服务,每个服务用字符串(只包含字母和数字,长度<…...
C++对C的加强(全)
目录 C对C的加强 命名空间 为什么要使用命名空间 怎么使用命名空间 命名空间的定义 命名空间的使用 使用域解析符 :: 使用using声明 内联命名空间 嵌套命名空间 随时将新的成员加入命名空间 命名空间中 函数的声明和实现分开 无名命名空间 命名空间取别名 使用u…...
ES6及以上新特性
ES6(ECMAScript 2015)及以上版本引入了许多新特性,每个版本都有不同的增强和改进。以下是 ES6 及以上版本的新特性的详细描述: ES6(ECMAScript 2015): let 和 const 声明:引入块级作…...
伦敦金在非农双向挂单
对伦敦金投资有一定经验的投资者都知道,在非农时期,伦敦金市场会出现很大的波动,那么我们如何才能抓住这些波动呢?答案是很难的。但是,有些投资者在多年实践中发明了一种双向挂单的方法,这里和大家一切分享…...
【C语言】—— __attribute__((fallthrough))
__attribute__((fallthrough)) 是一个在编译器中使用的特性,用于指示在 switch 语句中的 case 标签中故意省略 break 语句时的意图。它告诉编译器,故意省略 break 是有意为之,而不是出现了错误或遗漏。 当使用 switch 语句时,通常…...
【深度学习】生成对抗网络Generative Adversarial Nets
序言 本文是GAN网络的原始论文,发表于2014年,我们知道,对抗网络是深度学习中,CNN基础上的一大进步; 它最大的好处是,让网络摆脱训练成“死模型”到固定场所处去应用,而是对于变化的场景…...
【深度学习】从现代C++中的开始:卷积
一、说明 在上一个故事中,我们介绍了机器学习的一些最相关的编码方面,例如 functional 规划、矢量化和线性代数规划。 本文,让我们通过使用 2D 卷积实现实际编码深度学习模型来开始我们的道路。让我们开始吧。 二、关于本系列 我们将学习如何…...
金融数学方法:蒙特卡洛模拟
1.方法介绍 蒙特卡洛模拟是一种基于概率和统计的数值计算方法,用于解决各种复杂问题。它以概率统计为基础,通过随机抽样和重复实验的方式进行模拟,从而得到问题的近似解。它的基本思想是通过大量的随机样本来近似计算问题的解…...
vue 文件扩展名中 esm 、common 、global 以及 mini 、 dev 、prod 、runtime 的含义
vue 文件扩展名中 esm 、common 、global 以及 mini 、 dev 、prod 、runtime 的含义 vue.js 直接用在 script 标签中的完整版本(同时包含编译器 compiler 和运行时 runtime),可以看到源码,适用于开发环境。 这个版本视图可以写在…...
微服务契约测试框架Pact-Python实战
Pact是一个契约测试框架,有多种语言实现,本文以基于pact-python探究契约测试到底是什么?以及如何实现 官网:自述文件 |契约文档 (pact.io) 契约测试步骤 1、为消费者写一个单元测试,让它通过,并生成契约…...
Linux 给用户 赋某个文件夹操作的权限(实现三权分立)
Linux 给用户 赋某个文件夹操作的权限 这里用的ubuntu16.04 一、配置网站管理员 linux文件或目录的权限分为,读、写、可执行三种权限。文件访问的用户类别分为,文件创建者、与文件创建者同组的用户、其他用户三类。 添加用户 useradd -d /var/www/htm…...
【C++入门到精通】C++入门 —— 类和对象(初始化列表、Static成员、友元、内部类、匿名对象)
目录 一、初始化列表 ⭕初始化列表概念 ⭕初始化列表的优点 ⭕使用场景 ⭕explicit关键字 二、Static成员 ⭕Static成员概念 🔴静态数据成员: 🔴静态函数成员: ⭕使用静态成员的优点 ⭕使用静态成员的注意事项 三、友…...
“深入理解Spring Boot:从入门到高级应用“
标题:深入理解Spring Boot:从入门到高级应用 摘要:本文将介绍Spring Boot的基本概念、原理和使用方法,并探讨如何在实际开发中充分发挥Spring Boot的优势。通过详细的示例代码,读者将能够深入理解Spring Boot的各个方…...
Apache Spark 的基本概念和在大数据分析中的应用
Apache Spark是一种快速、通用、可扩展的大数据处理引擎,用于大规模数据处理任务,如批处理、交互式查询、实时流处理、机器学习和图形处理等。它的主要特点包括: 1. 速度:Spark使用In-Memory计算技术,将计算结果存储在…...
Debian LNMP架构的简单配置使用
一、LNMP简介 LinuxNginxMysqlPHP组成的网站架构,常用于中小型网站服务。 二、环境 Debian 6.1.27-1kali1 (2023-05-12) Nginx/1.22.1 10.11.2-MariaDB(mysql) PHP 8.2.7 (Debian 6.1.27包含以上包,直接使用即…...
CAN转EtherNet/IP网关can协议破解服务
JM-EIP-CAN 是自主研发的一款 ETHERNET/IP 从站功能的通讯网关。该产品主要功能是将各种 CAN 总线和 ETHERNET/IP 网络连接起来。 本网关连接到 ETHERNET/IP 总线中做为从站使用,连接到 CAN 总线中根据节点号进行读写。 技术参数 ETHERNET/IP 技术参数 网关做为 …...
最适合新手的Java项目/SpringBoot+SSM项目《苍穹外卖》/项目实战、笔记(超详细、新手)[持续更新……]
小知识 软件设计中提到的UI设计中的UI是什么意思? 在软件设计中,UI设计中的UI是User Interface的简称,即用户界面。UI设计是指对软件的人机交互、操作逻辑、界面美观的整体设计。好的UI设计可以让软件变得有个性有品位,同时让操作…...
CloudDriver一款将各种网盘云盘挂在到电脑本地变成本地磁盘的工具 教程
平时我们的电脑可能由于大量的文件资料之类的导致存储空间可能不够,所以我们可以选择将网盘我们的本地磁盘用来存放东西。 CloudDrive 是一款可以将 115、阿里云盘、天翼云盘、沃家云盘、WebDAV 挂载到电脑中,成为本地硬盘的工具,支持 Window…...
行为型模式之中介者模式
中介者模式(Mediator Pattern) 中介者模式是一种行为型设计模式,旨在通过封装一系列对象之间的交互方式,使其能够独立地进行通信。 中介者模式的核心思想是将对象之间的直接通信改为通过一个中介者对象来进行间接通信,…...
BPMNJS插件使用及汉化(Activiti绘制流程图插件)
BPMNJS插件运行最重要的就是需要安装nodejs插件,这不一定要安装和测试好。 主要是使用npm命令 1、配置BPMNJS插件绘制activiti7工作流 1.1、安装和配置nodejs 插件 1.1.1、下载nodejs 下载地址:https://nodejs.org/en 1.1.2、安装nodejs,傻瓜式安装 安装之后在安装…...
LabVIEW状态机设计:从顺序流程到事件驱动的架构升级
1. 项目概述:从“顺序流程”到“状态驱动”的思维跃迁如果你用过LabVIEW,画过流程图,写过一些简单的数据采集或仪器控制程序,那你大概率经历过这样的场景:程序一开始跑得挺好,几个步骤按顺序执行࿰…...
Web性能优化:Core Web Vitals实战
Web性能优化:Core Web Vitals实战 大家好,我是欧阳瑞(Rich Own)。今天想和大家聊聊Web性能优化这个重要话题。作为一个全栈开发者,页面性能直接影响用户体验和业务转化。今天就来分享一下Core Web Vitals的优化经验。 …...
OpenClaw 用户通过 Taotoken 快速接入并启用 Agent 工作流
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 OpenClaw 用户通过 Taotoken 快速接入并启用 Agent 工作流 对于使用 OpenClaw 框架构建 AI Agent 的开发者而言,能够灵…...
2021年AI落地临界点:视觉生成、代码补全与语音识别的工程化逻辑
1. 项目概述:这不是一份榜单,而是一份“AI技术落地时间表” “ The AI Monthly Top 3 — March 2021 ”——看到这个标题,很多人第一反应是:又一份AI行业资讯汇总?点开就走?但作为连续追踪AI工具演进路径…...
3DS Pokémon ROM 编辑器 pk3DS:新手入门完全指南
3DS Pokmon ROM 编辑器 pk3DS:新手入门完全指南 【免费下载链接】pk3DS Pokmon (3DS) ROM Editor & Randomizer 项目地址: https://gitcode.com/gh_mirrors/pk/pk3DS pk3DS 是一款功能强大的任天堂 3DS 平台 Pokmon 系列游戏 ROM 编辑器和随机化工具&…...
Photoshop+Unity法线贴图工作流:从NMF生成到URP Decal正确显示
1. 这不是一张“凹凸贴图”,而是一套从PS到Unity的法线工作流闭环你有没有试过在Photoshop里用滤镜生成法线贴图,导出后放进Unity——结果模型表面像被砂纸磨过一样全是噪点?或者更糟:Decal(贴花)明明贴在墙…...
BotW Save Manager:技术解析与实战指南,实现Switch与WiiU存档的无缝迁移
BotW Save Manager:技术解析与实战指南,实现Switch与WiiU存档的无缝迁移 【免费下载链接】BotW-Save-Manager BOTW Save Manager for Switch and Wii U 项目地址: https://gitcode.com/gh_mirrors/bo/BotW-Save-Manager BotW Save Manager是一款专…...
FPGA+DSP异构核心板在工业控制与数据采集中的应用与开发指南
1. 项目概述:为什么选择FPGADSP异构核心板?在工业控制、伺服驱动、光伏逆变这些对实时性和算力要求都极高的领域里,选型一块合适的核心板往往是项目成败的第一步。过去,我们可能需要在“高灵活性的FPGA”和“高主频的通用处理器”…...
三分钟永久备份QQ空间:让青春记忆永不褪色的终极方案
三分钟永久备份QQ空间:让青春记忆永不褪色的终极方案 【免费下载链接】QZoneExport QQ空间导出助手,用于备份QQ空间的说说、日志、私密日记、相册、视频、留言板、QQ好友、收藏夹、分享、最近访客为文件,便于迁移与保存 项目地址: https://…...
非标系统控制柜制造:从特殊工况到定制控制的完整解析
一、什么是非标系统控制柜制造?非标系统控制柜制造,是指针对常规PLC控制柜、变频器控制柜、低压配电柜、防爆控制柜之外的特殊控制需求,根据设备工艺、现场环境、控制逻辑、通讯协议、安全要求和安装空间,对柜体结构、电气元件、控…...
