当前位置:   article > 正文

华为OD机试 - 字符串解密(Java 2023 B卷 100分)_字母组合 华为题java

字母组合 华为题java

一、题目描述

给定两个字符串string1和string2。

string1是一个被加扰的字符串。string1由小写英文字母(‘a’-‘z’)和数字字符(‘0’-‘9’)组成,而加扰字符串由’0’-‘9’、‘a’-'f’组成。string1里面可能包含0个或多个加扰子串,剩下可能有0个或多个有效子串,这些有效子串被加扰子串隔开。

string2是一个参考字符串,仅由小写英文字母(‘a’-‘z’)组成。

你需要在string1字符串里找到一个有效子串,这个有效子串要同时满足下面两个条件:

  1. 这个有效子串里不同字母的数量不超过且最接近于string2里不同字母的数量,即小于或等于string2里不同字母的数量的同时且最大。
  2. 这个有效子串是满足条件(1)里的所有子串(如果有多个的话)里字典序最大的一个。如果没有找到合适条件的子串的话,请输出"Not Found"

示例:

输入字符串string1为"thisisanewday111forme",输入字符串string2为"good"。string1里有效子串和加扰子串分割后可表示为:“thisis”+“a”+“n”+“e”+“w”+“da”+“y”+“111f”+“orm”+“e”,去除加扰子串(“a”、“e”、“da”、“111f”、“e”)后的有效子串候选为(“thisis”, “n”, “w”, “y”, “orm”)。

输入字符串string2里不同字母的数量为3(‘g’、‘o’、‘d’),从有效子串候选里可以找出&

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号