// 愚直解 #include using namespace std; #define REP(i, m, n) for (int i = m; i < (int)(n); ++i) #define rep(i, n) REP(i, 0, n) template inline bool chmin(T &a, T b) { if (a > b) { a = b; return true; } return false; } int mid(vector a) { sort(begin(a), end(a)); int k = a.size(); return a[k / 2]; } int main() { cin.tie(nullptr); ios::sync_with_stdio(false); int n, q; cin >> n >> q; vector a(n); rep(i, n) cin >> a[i], a[i]--; vector l(q), r(q); rep(i, q) cin >> l[i] >> r[i], l[i]--; auto solve_i = [&](int L, int R) { int Min = int(1e9); REP(l, L, R) { REP(r, l + 1, R + 1) { vector b(a.begin() + l, a.begin() + r); vector c; for (int i = L; i < R;) { if (i < l or i >= r) c.push_back(a[i]), i++; else c.push_back(mid(b)), i = r; } chmin(Min, mid(c)); } } return Min; }; rep(i, q) cout << solve_i(l[i], r[i]) + 1 << "\n"; }