답안 #1060112

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1060112 2024-08-15T10:42:19 Z user736482 Lottery (CEOI18_lot) C++17
0 / 100
2 ms 348 KB
#include<bits/stdc++.h>
using namespace std;
int n,q,a,k,l;
vector<int>v,poz,match[2007];//duze jedno do usuniecia
int pod[4007];
queue<pair<int,int>>dous;
int main(){
    cin>>n>>l;
    for(int i=0;i<n;i++){
        cin>>a;
        v.push_back(a);
    }
    for(int i=0;i<l-1;i++){
        poz.clear();
        for(int j=0;j<n;j++){
            if(i==j) continue;
            if(v[i]==v[j]) poz.push_back(j);
        }
        return 0;
        for(int j=0;j<poz.size();j++){
            pod[-i+poz[j]]++;
            dous.push({i,poz[j]});
        }
        return 0;
    }
    //return 0;
    for(int i=l-1;i<n;i++){
            poz.clear();
        for(int j=0;j<n;j++){
            if(i==j) continue;
            if(v[i]==v[j]) poz.push_back(j);
        }
        while(!dous.empty() && i-l>=dous.front().first){
            pod[-dous.front().first+dous.front().second]--;
            dous.pop();
        }
        for(int j=0;j<poz.size();j++){
            pod[-i+poz[j]]++;
            //cout<<i+poz[i][j]<<" ";
            dous.push({i,poz[j]});
        }
      //  for(int j=l-1;j<i;j++) cout<<0<<" ";
       // for(int j=i;j<n;j++)
     //       cout<<pod[-i+j]<<" ";
        for(int j=i+1;j<n;j++){
            match[i-l+1].push_back(pod[-i+j]);
            match[j-l+1].push_back(pod[-i+j]);
        //    cout<<j-l<<"  ";
        }
        //cout<<"\n";
    }
    //return 0;
    /*for(int i=0;i<n-l+1;i++){
        for(int j=0;j<match[i].size();j++)
            cout<<match[i][j]<<" ";
        cout<<"\n";
    }*/
    //return 0;
    cin>>q;
    for(int i=0;i<q;i++){
        cin>>k;
        k=l-k;
        for(int j=0;j<n-l+1;j++){
            int licz=0;
            for(int p=0;p<match[j].size();p++){
                if(match[j][p]>=k)
                    licz++;}
            cout<<licz<<" ";
        }
        cout<<"\n";
    }
}

Compilation message

lot.cpp: In function 'int main()':
lot.cpp:20:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   20 |         for(int j=0;j<poz.size();j++){
      |                     ~^~~~~~~~~~~
lot.cpp:37:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   37 |         for(int j=0;j<poz.size();j++){
      |                     ~^~~~~~~~~~~
lot.cpp:65:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   65 |             for(int p=0;p<match[j].size();p++){
      |                         ~^~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Incorrect 0 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Incorrect 0 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Incorrect 0 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -