asp.net 4.0网站开发实例教程,自己做网站还能挣钱吗,全国做网站的,织梦网站栏目建设文章目录1. 题目2. 解题1. 题目
对于任何字符串#xff0c;我们可以通过删除其中一些字符#xff08;也可能不删除#xff09;来构造该字符串的子序列。
给定源字符串 source 和目标字符串 target#xff0c;找出源字符串中能通过串联形成目标字符串的子序列的最小数量。…
文章目录1. 题目2. 解题1. 题目
对于任何字符串我们可以通过删除其中一些字符也可能不删除来构造该字符串的子序列。
给定源字符串 source 和目标字符串 target找出源字符串中能通过串联形成目标字符串的子序列的最小数量。 如果无法通过串联源字符串中的子序列来构造目标字符串则返回 -1。
示例 1
输入source abc, target abcbc
输出2
解释目标字符串 abcbc 可以由 abc 和 bc 形成
它们都是源字符串 abc 的子序列。示例 2
输入source abc, target acdbc
输出-1
解释由于目标字符串中包含字符 d所以无法由源字符串的子序列构建目标字符串。示例 3
输入source xyz, target xzyxz
输出3
解释目标字符串可以按如下方式构建 xz y xz。提示
source 和 target 两个字符串都只包含 a-z 的英文小写字母。
source 和 target 两个字符串的长度介于 1 和 1000 之间。来源力扣LeetCode 链接https://leetcode-cn.com/problems/shortest-way-to-form-string 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 2. 解题
class Solution {
public:int shortestWay(string source, string target) {int i 0, j 0, k, count 0;while(j target.size()){k j;//记录开始的地方count;i 0;//新的开始while(i source.size())//遍历字符串{if(source[i] target[j])//可以给到target{i;j;}elsei;//删除某字符}if(j k)//没有填入一个字符到targetreturn -1;}return count;}
};0 ms 6.6 MB 我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号Michael阿明一起加油、一起学习进步