#include <bits/stdc++.h>
using namespace std;
inline int F() {
  register int aa, bb, ch;
  while (ch = getchar(), (ch < '0' || ch > '9') && ch != '-')
    ;
  ch == '-' ? aa = bb = 0 : (aa = ch - '0', bb = 1);
  while (ch = getchar(), ch >= '0' && ch <= '9') aa = aa * 10 + ch - '0';
  return bb ? aa : -aa;
}
const int Maxn = 200005;
int a[Maxn];
set<int> v;
int main() {
  int n = F(), m = F(), x, f;
  for (int i = 1; i <= m; ++i) {
    int x = F();
    ++a[x];
  }
  for (int i = 1; i <= n; ++i)
    if (a[i]) v.insert(i);
  if (a[n]) {
    puts("Greed is good");
    return 0;
  }
  for (int i = 1; i < n; ++i) {
    int x = n, f = n;
    if (!a[i]) v.insert(i);
    a[i]++;
    while (x) {
      set<int>::iterator it = v.upper_bound(f);
      if (it == v.begin()) break;
      --it;
      int y = *it;
      x -= min(x / y, a[y]) * y;
      f = min(x, y - 1);
    }
    if (x) {
      printf("%d", i);
      return 0;
    }
    if (!(--a[i])) v.erase(i);
  }
  puts("Greed is good");
}
