func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long MOD = 1e9 + 7;   const long double PI = 3.141592653589793238462643383279502884197;   priority_queue<int, vector<int>, greater<int> > pq;   vector<int> v;   int al[256];   char s[200001], t[200001];   int visit[200001];   int n, m;   int main() {     scanf( %s %s , s, t);     n = strlen(s);     m = strlen(t);     memset(al, -1, sizeof(al));     int l = 0;     for (int i = 0; i < n; i++) {       if (l < m && s[i] == t[l]) {         al[s[i]] = l;         l++;       }       if (al[s[i]] == -1) return !printf( No );       visit[i] = al[s[i]];     }     if (l != m) return !printf( No );     l = m - 1;     memset(al, -1, sizeof(al));     for (int i = n - 1; i >= 0; i--) {       if (l >= 0 && s[i] == t[l]) {         al[s[i]] = l;         l--;       }       if (al[s[i]] == -1) return !printf( No );       if (visit[i] < al[s[i]]) return !printf( No );     }     if (l != -1) return !printf( No );     printf( Yes );   }   