样例有误
#include<iostream>
#include<cmath>
using namespace std;
const int N = 1e6+5;
int f[N][25];
int main(){
int n, m;
cin >> n >> m;
for(int i = 1; i <= n; i++)
cin >> f[i][0];
for(int i = 1; i <= 21; i++)
for(int j = 1; j+(1<<i)-1 <= n; j++)
f[j][i] = max(f[j][i-1], f[j+(1<<(i-1))][i-1]);
int l = 1, r = m;
while(l <= n-m+1 && r <= n){
int len = log2(r-l+1);
cout << max(f[l][len], f[r-(1<<len)+1][len]) << "\n";
l++, r++;
}
return 0;
}