Submission #1050137

#TimeUsernameProblemLanguageResultExecution timeMemory
1050137antonLottery (CEOI18_lot)C++17
45 / 100
219 ms65536 KiB
#include<bits/stdc++.h>

using namespace std;
int N, L, Q;


int dist(vector<int>& a, vector<int>& b){
    int d= 0;
    for(int i = 0; i<L; i++){
        if(a[i]!=b[i]){
            d++;
        }
    }
    return d;
}
signed main(){
    cin>>N>>L;

    vector<int> a(N);

    for(int i = 0; i<N; i++){
        cin>>a[i];
    }

    vector<vector<int>> inters;

    vector<vector<int>> adj(N-L+1);


    for(int i = 0; i<N-L+1; i++){
        vector<int> inter;
        for(int j = i; j<i+L; j++){
            inter.push_back(a[j]);
        }
        inters.push_back(inter);
    }

    for(int cur = 0; cur<N-L+1; cur++){
        for(int other= cur+1; other<N-L+1; other++){
            int d = dist(inters[cur], inters[other]);
            adj[cur].push_back(d);
            adj[other].push_back(d);
        }
    }

    cin>>Q;

    for(int i = 0; i<Q; i++){
        int k;
        cin>>k;
        for(int inter_id=  0; inter_id <N-L+1; inter_id++){
            int r =0;
            for(auto e: adj[inter_id]){
                if(e<=k){
                    r++;
                }
            }
            cout<<r<<" ";
        }
        cout<<endl;
    }
}
#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...