1 条题解

  • 0
    @ 2023-3-25 17:05:46
    #include <bits/stdc++.h>
    #define int long long
    using namespace std;
    const int MAXL = 1000000;
    string t, p;
    int nxt[MAXL + 5];
    void getNxt(const string &s)
    {
        nxt[0] = 0;
        for (int i = 1; i < s.length(); i++)
        {
            int j = nxt[i - 1];
            while (j != 0 && s[j] != s[i])
                j = nxt[j - 1];
            if (s[j] == s[i])
                j++;
            nxt[i] = j;
        }
    }
    int L;
    string s;
    signed main()
    {
        ios::sync_with_stdio(false);
        cin.tie(0);
        cin >> L;
        cin >> s;
        getNxt(s);
        cout << L - nxt[L - 1] << "\n";
        return 0;
    }
    
    • 1

    「一本通 2.2 练习 1」Radio Transmission

    信息

    ID
    687
    时间
    1000ms
    内存
    512MiB
    难度
    4
    标签
    递交数
    36
    已通过
    18
    上传者