zl程序教程

您现在的位置是:首页 >  后端

当前栏目

【华为OD机试 2023最新 】 密室逃生游戏(C++ 100%)

C++游戏华为 2023 最新 机试 OD 100%
2023-09-14 09:06:45 时间

题目描述

小强在参加《密室逃生》游戏,当前关卡要求找到符合给定 密码K(升序的不重复小写字母组成) 的箱子,并给出箱子编号,箱子编号为 1~N 。
每个箱子中都有一个 字符串s ,字符串由大写字母、小写字母、数字、标点符号、空格组成,需要在这些字符串中找到所有的字母,忽略大小写后排列出对应的密码串,并返回匹配密码的箱子序号。

提示:满足条件的箱子不超过1个。

输入描述

第一行为 key 的字符串,
第二行为箱子 boxes,为数组样式,以空格分隔

  • 箱子 N 数量满足 1 ≤ N ≤ 10000,
  • s 长度满足 0 ≤ s.length ≤ 50,
  • 密码为仅包含小写字母的升序字符串,且不存在重复字母,
  • 密码 K 长度1 ≤ K.l e n g t h ≤ 26

输出描述

返回对应箱子编号
如不存在符合要求的密码箱,则返回 -1。

用例

输入 abc
s,sdf134 A2c4b
输出 2
说明 第 2 个箱子中的 Abc ,符合密码 abc。

题目解析

简单题,最简单的就是双重for循环,统计字符数量,在和key的数量对比。大于等于,则说明当前box就是可以匹配密码的箱子,返回当前箱子的序号。