#include <bits/stdc++.h>
using namespace std;
const long long kMaxN = 330000;
long long n, k;
long long Pre[kMaxN];
struct A {
  long long val;
  long long id;
  bool operator<(const A& b) const { return val < b.val; }
} arr[kMaxN];
int main() {
  scanf("%lld", &n);
  for (long long i = 1; i <= n; i++) scanf("%lld", &arr[i].val), arr[i].id = i;
  scanf("%lld", &k);
  sort(arr + 1, arr + n + 1);
  long long sum = 0;
  for (int i = 1; i <= n; i++) Pre[i] = Pre[i - 1] + arr[i].val;
  for (int i = 1; i <= k; i++) sum = sum + (i - 1) * arr[i].val - Pre[i - 1];
  long long ans = sum;
  long long l = 1, r = k;
  for (int i = k + 1; i <= n; i++) {
    sum = sum + arr[i].val * (k - 1) - (Pre[i - 1] - Pre[i - k]) -
          (Pre[i - 1] - Pre[i - k] - (k - 1) * arr[i - k].val);
    if (sum < ans) {
      ans = sum;
      r = i;
      l = i - k + 1;
    }
  }
  for (long long i = l; i <= r; i++) {
    printf("%lld%c", arr[i].id, l == r ? '\n' : ' ');
  }
  return 0;
}
