#include <bits/stdc++.h>
using namespace std;
int n, k;
long long a[1005], viz[1005], ans[1005], nrans, pos, val, b[1005];
void ask() {
  int i;
  cout << '?';
  for (i = 1; i <= nrans; i++) cout << ' ' << ans[i];
  cout << "\n";
  cout.flush();
  cin >> pos >> val;
  b[pos] = val;
}
vector<int> v;
int main() {
  int i, j;
  std::ios::sync_with_stdio(false);
  cin >> n >> k;
  long long mini = 1e9, posmin = 0;
  for (i = 1; i <= k + 1; i++) {
    nrans = 0;
    for (j = 1; j <= k + 1; j++)
      if (j != i) {
        nrans++;
        ans[nrans] = j;
      }
    ask();
    v.push_back(val);
  }
  int answer = 0;
  for (auto x : v) answer = max(answer, x);
  int cnt = 0;
  for (auto x : v)
    if (x == answer) cnt++;
  cout << '!' << ' ' << cnt;
  cout.flush();
  return 0;
}
