第一题:83%
第二题:100%
第三题:50%
我把题目大概描述了一下,里面有我写的代码,大佬帮忙看看有啥错误
这是我第二题的思路:
第二题我是写了一个函数find,从字符串T中的第h位开始查找匹配对象(H或R)。具体实现:因为H和R是在字符串A中,一个是0到loc-1,一个是loc+1到A.size()-1,(loc是指*的位置),所以我把 A 和开始、结尾作为参数传了进去。
主函数我是在一个循环里面,先找到一个匹配头H,然后找到一个匹配尾R,如果匹配到的头在尾之后,就继续找下一个尾。找到后更新s1, s2。进入下一个循环,寻找下一个头,下一个尾。
第二题示例:
输入:AAAXBB A*B
输出:2(AAAXB(用了第一个A和第一个B)和AAXBB(用了第二个A和第二个B))就是说每一个匹配都只能用一次。
输入:ABABABAB AB*AB
输出:3(ABAB(第一个和第二个AB),ABAB(第二个和第三个AB),ABAB(第三个和第四个AB))
全部评论
(10) 回帖