#include <bits/stdc++.h>
using namespace std;
struct node {
  long long int pos;
  long long int index;
};
bool cm(node a, node b) { return a.pos < b.pos ? 1 : 0; }
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long int n, k, i;
  cin >> n;
  vector<node> v(n);
  for (i = 0; i < n; i++) {
    cin >> v[i].pos;
    v[i].index = i + 1;
  }
  sort(v.begin(), v.end(), cm);
  cin >> k;
  long long int s = 0, e = 0, sum = 0, ans = 100000000000000, start = 0,
                end = k - 1, pre = 0;
  long long int l = 0, r = k - 1;
  for (i = 0; i < k; i++) {
    sum += (l * v[i].pos - r * v[i].pos);
    l++;
    r--;
    pre += v[i].pos;
  }
  ans = sum;
  s = 0;
  e = k - 1;
  while (e < n - 1) {
    pre -= v[s].pos;
    sum += (v[s].pos * (k - 1));
    s++;
    sum -= (2 * pre);
    e++;
    sum += (v[e].pos * (k - 1));
    pre += v[e].pos;
    if (sum < ans) {
      ans = sum;
      start = s;
      end = e;
    }
  }
  while (start <= end) {
    cout << v[start].index << " ";
    start++;
  }
}
