#include typedef unsigned long long ll; using namespace std; ll maximum(int,int,vector ); ll minimum(int,int,vector ); ll OR(int,int,vector ); ll AND(int,int,vector ); int maxi(int ,int ); vector costlyIntervals(int,int,vector ); ll maximum(int i,int j,vectorA){ ll max=A[i]; for(int k=i+1;k<=j;k++)if(A.at(k)>max)max=A.at(k); return max; } ll minimum(int i,int j,vectorA){ ll min=A[i]; for(int k=i+1;k<=j;k++)if(A.at(k)A){ ll ORo=A.at(i); for(int k=i+1;k<=j;k++)ORo=ORo|A.at(k); return ORo; } ll AND(int i,int j,vectorA){ ll And=A[i]; for(int k=i+1;k<=j;k++)And=And&A.at(k); return And; } int maxi(int i,int j){ if(i>j)return i; else return j; } vector costlyIntervals(int n, int k, vector A) { vectorarr; for(int i=0;i=k){ if(maxi(j-i+1,i-j+1)>count)count=maxi(j-i+1,i-j+1); } } if(count==0)count=-1; arr.push_back(count); } return arr; // Return a list of length n consisting of the answers } int main() { int n; ll k; cin >> n >> k; vector A(n); for(int A_i = 0; A_i < n; A_i++){ cin >> A[A_i]; } vector result = costlyIntervals(n, k, A); for (ssize_t i = 0; i < result.size(); i++) { cout << result[i] << (i != result.size() - 1 ? "\n" : ""); } cout << endl; return 0; }