Submission #1060188

#TimeUsernameProblemLanguageResultExecution timeMemory
1060188kachim2Lottery (CEOI18_lot)C++17
20 / 100
391 ms856 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int l, n;
    cin >> n >> l;
    vector<int> a(n);
    vector<__int128_t> hashe(n-l+1);
    for(auto &i:a) cin >> i;
    __int128_t almoptrime = 1;
    almoptrime<<=126;
    almoptrime-=1;
    for(int i = 0; i < n-l+1; i++)
    {
        __int128_t has = 0;
        for(int llll = 0; llll < l; llll++)
        {
            has*=7935;
            has+=a[i+llll];
            has%=almoptrime;

        }
        hashe[i]=has;
    }
    int q;
    cin >> q;
    while(q--)
    {
        int k;
        cin >> k;
        for(int i = 0; i < n-l+1; i++)
        {
            int ans = 0;
            for(int j = 0; j < n-l+1; j++)
            {
                if (i==j) continue;
                if(hashe[i]==hashe[j]) ans++;
            }
            cout << ans << ' ';
        }
        cout << '\n';

    }

    return 0;
}

#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...