#include #define endl '\n' using namespace std; bool sorted(int a[], int n) { int i; for (i = 1; i < n; i++) { if (a[i] < a[i-1])return 0; } return 1; } void Print(int a[], int n) { for (int i = 0; i < n; i++) { cout << a[i]; } cout << endl; } int main() { ifstream cin ("partsort.in"); ofstream cout("partsort.out"); ios::sync_with_stdio(0); cin.tie(NULL); int n, k, t, i, j, br = 0, MIN = INT_MAX, second = 0, l; cin >> t; while (t) { int a[10005]; cin >> n >> k; for (i = 0; i < n; i++) { cin >> a[i]; } br = 0; if (n == k)l = 0; else l = 1; while (!sorted(a, n)) { sort (a, a+k); for (i = k; i < n-1; i++) { if (a[i] < a[i-k+1])swap(a[i-k+1], a[i]); } /*cout << i << " "; Print(a, n);*/ sort (a+l+i-k, a+i+l); br++; } cout << br << endl; t--; } return 0; } /* 3 5 3 4 5 3 1 2 3 2 1 2 3 7 7 7 6 5 4 3 2 1 */