#include "sequence.h"
#include <bits/extc++.h>
#define int long long
#define emb emplace_back
#define pii pair <int32_t, int32_t>
#define tiii tuple <int32_t, int32_t, int32_t>
#define all(a) a.begin(), a.end()
using namespace std;
using namespace __gnu_pbds;
#define ordered_multiset tree <int, null_type, less_equal <int>, rb_tree_tag, tree_order_statistics_node_update>
const int N = 5e5 + 5;
const int inf = 1e18;
int n, a[N];
int32_t sequence(int32_t Nn, vector<int32_t> A) {
n = Nn;
for (int i = 0; i < n; i++) a[i + 1] = A[i];
ordered_multiset ms;
int ans = 0;
for (int l = 1; l <= n; l++) {
vector <int> freq(n + 1);
int sz = 0;
for (int r = l; r <= n; r++) {
ms.insert(a[r]);
freq[a[r]]++;
ans = max(ans, freq[*ms.find_by_order((sz/2))]);
ans = max(ans, freq[*ms.find_by_order(((sz+1)/2))]);
if (ans == 2) return 2;
sz++;
}
ms.clear();
}
return 1;
}