solution
#include<iostream>
#include<string>
using namespace std;
int main(){int l, r, len = 10000, n;string s, p;cin >> s >> p;for(int i = 0; i <= s.size() - p.size(); i++){//剩下子串长度不足p.siez()时,不可能再出现子列pif(s[i] == p[0]){n = 1;//n表示p的前n个字符已经出现for(int j = i + 1; j < s.size(); j++){if(s[j] == p[n]) n++;if(n == p.size()){//p中所有字符都已出现if(j - i < len){//若长度小于当前记录的最小长度,则更新len = j - i;l = i;r = j;}break;}}}}for(int i = l; i <= r; i++) cout << s[i];return 0;
}