PAT 1125 子串与子列 25分

题目:1125 子串与子列 - PAT (Basic Level) Practice (中文) (pintia.cn)

解析:【PAT甲级、乙级2020冬季】7-5 子串与子列 Subsequence in Substring (25 分)_pat子串与子列-CSDN博客

js 复制代码
#include<bits/stdc++.h>
using namespace std;

vector<int>v;
int main()
{ 
    string s,p;cin>>s>>p;
    for(int i=0;i<s.size();i++)
    {
        if(s[i]==p[0])v.push_back(i);
    }

    int minlen=s.size()+1,mini=0;
    //开始查找
    for(int i=0;i<v.size();i++)
    {
      int cnt=1;  //p[0]已经查找完了

        for(int j=v[i]+1;j<s.size();j++)
        {
          if(s[j]==p[cnt])cnt++;
            if(cnt==p.size()) //找完了
            {
                if(j-v[i]<minlen)
                {
                    minlen=j-v[i];
                    mini=v[i];
                }
                break;
            }
                
        }
    }

    for(int i=mini;i<=mini+minlen;i++)
    {
        cout<<s[i];
    }
    return 0;
}
相关推荐
pianmian1几秒前
完全平方数
数据结构·算法
A_Tai23333332 分钟前
贪心算法解决用最少数量的箭引爆气球问题
算法·贪心算法
唐叔在学习14 分钟前
【唐叔学算法】第19天:交换排序-冒泡排序与快速排序的深度解析及Java实现
java·算法·排序算法
_nirvana_w_14 分钟前
C语言实现常用排序算法
c语言·算法·排序算法
唐叔在学习21 分钟前
【唐叔学算法】第18天:解密选择排序的双重魅力-直接选择排序与堆排序的Java实现及性能剖析
数据结构·算法·排序算法
Kenneth風车1 小时前
【机器学习(九)】分类和回归任务-多层感知机(Multilayer Perceptron,MLP)算法-Sentosa_DSML社区版 (1)11
算法·机器学习·分类
最后一个bug1 小时前
rt-linux中使用mlockall与free的差异
linux·c语言·arm开发·单片机·嵌入式硬件·算法
蹉跎x2 小时前
力扣1358. 包含所有三种字符的子字符串数目
数据结构·算法·leetcode·职场和发展
rainoway2 小时前
CRDT宝典 - yata算法
前端·分布式·算法
巫师不要去魔法部乱说3 小时前
PyCharm专项训练4 最小生成树算法
算法·pycharm