Submission #1050162

#TimeUsernameProblemLanguageResultExecution timeMemory
1050162antonLottery (CEOI18_lot)C++17
20 / 100
163 ms928 KiB
#include<bits/stdc++.h> using namespace std; #define ll long long int N, L, Q; int A; const int MOD = 1e9+7; 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; } ll mhash(vector<int>& v){ ll r= 1; for(int i = 0; i<v.size(); i++){ r = ((ll)(v[i]) + r*A)%MOD; } return r; } signed main(){ cin>>N>>L; vector<int> a(N); srand(time(NULL)); A = rand(); for(int i = 0; i<N; i++){ cin>>a[i]; } vector<int> inter_hash; map<int, int> oc; 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]); } inter_hash.push_back(mhash(inter)); oc[inter_hash.back()]++; } cin>>Q; for(int i = 0; i<Q; i++){ int k; cin>>k; for(int j = 0; j<N-L+1; j++){ cout<<oc[inter_hash[j]]-1<<" "; } cout<<endl; } }

Compilation message (stderr)

lot.cpp: In function 'long long int mhash(std::vector<int>&)':
lot.cpp:22:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |     for(int i = 0; i<v.size(); i++){
      |                    ~^~~~~~~~~
#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...