P9940 题解

· · 题解

设两字符串分别为 a,b

可以从 a_0 开始,遍历 b,如果 a_i=b_ji 加一,然后继续遍历 b,重复上述操作。如果 a 还没有遍历完,那么从 b_0 开始再遍历一次,继续搜相同字符。每遍历一次,次数 ans 就加一,最后输出 ans 即可。

#include<bits/stdc++.h>

using namespace std;

string a, b;
int i = 0, ans = 0;

int main() {

    cin >> a >> b;
    while (i <= b.size()) {
        for (int j = 0; j <= a.size(); ++j) {
            if (a[j] == b[i]) i++;
        }
        ++ans;
    }
    cout << ans;

    return 0;

}