#include using namespace std; #define MAXN 3010 #define MAXI 100100 #define INF 1e9 #define WL(t) while(t--) #define FOR(i,s,e) for(int i=s; i<=e; i++) int n, l, ans; int a[MAXN], memo[MAXN][MAXI]; class fastio { public: fastio() { ios_base::sync_with_stdio(false); cout.tie(nullptr); cin.tie(nullptr); } } __fastio; int f(int i, int p) { if(p > l) return INF; if(memo[i][p] != -1) return memo[i][p]; else { int ans = -INF; FOR(k,1,n) { if(a[i] >= a[k]) { ans = max(ans, (min(f(k,p+1), abs(i-k)))); } } return memo[i][p] = ans; } } void solve() { cin >> n >> l; FOR(i,1,n) { cin >> a[i]; } int maxi = -INF; memset(memo, -1, sizeof(memo)); FOR(i,1,n) { maxi = max(maxi, f(i,1)); } cout << maxi << endl; } int main() { __fastio; int t; cin >> t; WL(t) { solve(); } return 0; }