- 按键认证大神
- 2699998
- 3587
- 11
- 2173 朵
- 7386 个
- 1021 个
- 91120
- 2014-08-23
|
1#
t
T
发表于 2022-05-05 14:14
|
|只看楼主
题目描述 给定2个由英文小写字母组成的字符串s1 和s2 , 请编写一个函数,当s1 重新组合后能跟s2 相匹配则返回True ,否则返回False 。
示例: 输入:'ovswmlhe', 'smwh' ,输出:True ,因为前者可以重组成lovesmwh 。
题目难度:中等 题目来源:CodeWars-Scramblies 题目交流: 584781753
|
- Import "SmAssert.dll"
- Function 乱序匹配(字符串1, 字符串2)
- // 您的代码写在这里
- End Function
- SmAssert 乱序匹配("ovswmlhe", "smwh") = True
- SmAssert 乱序匹配("rkqodlw", "world") = True
- SmAssert 乱序匹配("katas", "steak") = False
复制代码 参考题解- Import "SmAssert.dll"
- Function 乱序匹配(字符串1, 字符串2)
-
- '【作者】:神梦无痕
- '【QQ】:1042207232
- '【Q群】:584781753
-
- Dim s1, s2, i, c, index
-
- s1 = LCase(字符串1)
- s2 = LCase(字符串2)
- For i = 1 To Len(s2)
- c = Mid(s2, i, 1)
- index = InStr(s1, c)
- If index > 0 Then
- s1 = Replace(s1, c, " ", 1, 1)
- Else
- 乱序匹配 = False
- Exit Function
- End If
- Next
- 乱序匹配 = True
- End Function
- SmAssert 乱序匹配("ovswmlhe", "smwh") = True
- SmAssert 乱序匹配("rkqodlw", "world") = True
- SmAssert 乱序匹配("katas", "steak") = False
复制代码 插件下载【插件】神梦断言插件 SmAssert.dll,帮助开发者发现业务逻辑错误
|