Submission #2576991


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
#define r(i,n) for(int i=0;i<n;i++)

struct RSQ{
  int n=(1<<17),data[(1<<18)];
  RSQ(){
    memset(data,0,sizeof(data));
  }
  // 0 index
  void add(int i,int v){
    i++;
    while(i<=n){
      data[i]+=v;
      i+=i&-i;
    }
  }
  int sum(int i){
    int res=0;
    while(i>0){
      res+=data[i];
      i-=i&-i;
    }
    return res;
  }
  //[a,b) 0indexed
  int sum(int x,int y){
    return sum(y)-sum(x);
  }
  //K番目に小さい値
  int K_number(int k){
    int l = 0,r = (1<<18)+1;
    while( l < r ) {
      int mid = (l+r) / 2;
      if( sum( 1 , mid+1 ) >= k ) r = mid;
      else l = mid+1;
    }
    return l;
  }
};

int main(){
    int n,k;
    cin>>n>>k;
    int a[n];
    map<int,int>m;
    r(i,n)cin>>a[i],m[a[i]]=i+1;
    RSQ R;
    for(int i=0;i<k-1;i++)R.add(a[i],1);
    for(int i=k-1;i<n;i++){
        R.add(a[i],1);
        cout<<m[R.K_number(k)]<<endl;
    }
}

Submission Info

Submission Time
Task B - 特別賞
User c7c7
Language C++14 (GCC 5.4.1)
Score 100
Code Size 989 Byte
Status AC
Exec Time 229 ms
Memory 6784 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 40 / 40 60 / 60
Status
AC × 2
AC × 13
AC × 22
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
Subtask1 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt
Subtask2 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt
Case Name Status Exec Time Memory
sample_01.txt AC 2 ms 1280 KB
sample_02.txt AC 2 ms 1280 KB
subtask1_01.txt AC 1 ms 1280 KB
subtask1_02.txt AC 1 ms 1280 KB
subtask1_03.txt AC 2 ms 1280 KB
subtask1_04.txt AC 2 ms 1280 KB
subtask1_05.txt AC 3 ms 1280 KB
subtask1_06.txt AC 4 ms 1280 KB
subtask1_07.txt AC 2 ms 1280 KB
subtask1_08.txt AC 3 ms 1280 KB
subtask1_09.txt AC 3 ms 1280 KB
subtask1_10.txt AC 3 ms 1280 KB
subtask1_11.txt AC 3 ms 1280 KB
subtask2_01.txt AC 28 ms 2048 KB
subtask2_02.txt AC 3 ms 1408 KB
subtask2_03.txt AC 174 ms 6656 KB
subtask2_04.txt AC 229 ms 6784 KB
subtask2_05.txt AC 65 ms 6400 KB
subtask2_06.txt AC 136 ms 6656 KB
subtask2_07.txt AC 158 ms 6656 KB
subtask2_08.txt AC 149 ms 6656 KB
subtask2_09.txt AC 158 ms 6656 KB