#include using namespace std; const int INF = 2e9; const int MN = 105; const int MOD = 1000000007; const int LOG = 20; int n,k; int a[MN]; long long merge(vector& v, int l, int r) { if (l >= r) return 0; int mid = l + (r - l) / 2; long long count = 0; count += merge(v, l, mid); count += merge(v, mid + 1, r); vector tmp; int i = l, j = mid + 1; while (i<=mid && j<=r) { if (v[i] <= v[j]) { tmp.push_back(v[i]); i++; } else { tmp.push_back(v[j]); count += (mid - i + 1); j++; } } while (i <= mid) tmp.push_back(v[i++]); while (j <= r) tmp.push_back(v[j++]); for (int p = 0; p < tmp.size(); p++) { v[l + p] = tmp[p]; } return count; } int main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int ans = 0; cin >> n; for (int i=1; i<=n; i++){ cin >> a[i]; } cin >> k; vector g[k]; for (int i=1; i<=n; i++){ g[i%k].push_back(a[i]); } for (int i=0; i