1 条题解

  • 0
    @ 2026-2-1 15:45:14
    #include<bits/stdc++.h>
    using namespace std;
    
    int main(){
        // B_s:存储牛文字母表的顺序,F_s:存储Farmer John听到的字符序列
        string B_s,F_s;
        cin >> B_s >> F_s; // [1] 输入牛文字母表和听到的字符串
    
        int sum = 0, i = 0; // sum:记录完整演唱的次数,i:当前处理听到字符串的位置
        // [2] 循环处理听到的所有字符,直到全部匹配完成
        while(i < F_s.size()){
            int flag = 0; // 标记本次遍历牛文表是否匹配到字符
            // [3] 完整遍历一遍牛文字母表,尝试匹配当前字符
            for(int j = 0; j < B_s.size(); j++){
                if(F_s[i] == B_s[j]){
                    i++; // 匹配成功,移动到下一个待处理字符
                    flag = 1;
                }
            }
            sum++; // 每完整遍历一次牛文表,代表演唱了一遍
        }
    
        cout << sum; // [4] 输出最少需要演唱的完整次数
        return  0;
    }
    
    • 1

    信息

    ID
    1031
    时间
    1000ms
    内存
    256MiB
    难度
    1
    标签
    递交数
    2
    已通过
    1
    上传者