#include <bits/stdc++.h>
using namespace std;
bool comp(pair<long long int, long long int> p1,
          pair<long long int, long long int> p2) {
  if (p1.first < p2.first) return true;
  return false;
}
int main() {
  int n;
  scanf("%d", &n);
  int a[n + 5];
  for (int i = 0; i < n; i++) scanf("%d", &a[i]);
  vector<pair<long long, long long> > v;
  for (int i = 0; i < n; i++) {
    v.push_back(make_pair(a[i], i + 1));
  }
  sort(v.begin(), v.end(), comp);
  int k;
  scanf("%d", &k);
  long long int par[n + 5];
  par[0] = 0;
  for (int i = 1; i <= n; i++) par[i] = par[i - 1] + v[i - 1].first;
  long long int l = 0;
  long long int r = k;
  long long mini = (long long)1e19;
  int pos = 0;
  l = 0;
  r = 1;
  long long int tot_sum = 0;
  while (r < k) {
    tot_sum += v[r].first * (r - l);
    tot_sum -= par[r];
    r++;
  }
  l = 0;
  mini = min(tot_sum, mini);
  while (r < n) {
    long long x = par[r] - par[l + 1];
    x -= v[l].first * (r - l - 1);
    tot_sum -= x;
    l++;
    tot_sum += v[r].first * (r - l);
    tot_sum -= par[r] - par[l];
    if (tot_sum < mini) {
      mini = tot_sum;
      pos = l;
    }
    r++;
  }
  vector<long long> ans;
  for (int i = pos; i < pos + k; i++) ans.push_back(v[i].second);
  for (int i = 0; i < (long long int)ans.size(); i++) printf("%lld ", ans[i]);
  return 0;
}
