1 条题解

  • 0
    @ 2026-1-30 11:19:09
    #include<bits/stdc++.h>
    using namespace std;
    
    int main() {
        string s;
        cin >> s; // [1] 读取输入的神秘代码字符串
        string target = "SECRET"; // [2] 定义目标关键字
        int n = s.size();
        int m = target.size();
        int first = -1, last = -1; // [3] 初始化第一次和最后一次出现的位置为-1
    
        // [4] 遍历字符串,寻找所有匹配的子串
        for (int i = 0; i <= n - m; i++) {
            bool match = true;
            for (int j = 0; j < m; j++) {
                if (s[i + j] != target[j]) {
                    match = false;
                    break;
                }
            }
            if (match) {
                if (first == -1) {
                    first = i + 1; // [5] 第一次匹配,记录1-based起始位置
                }
                last = i + 1; // [6] 每次匹配都更新最后一次位置
            }
        }
    
        // [7] 输出结果
        cout << first << " " << last << endl;
        return 0;
    }
    
    • 1

    信息

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