#include #define all(vec) vec.begin(), vec.end() using namespace std; using ll = long long; using P = pair; constexpr ll INF = (1LL << 30) - 1LL; constexpr ll LINF = (1LL << 60) - 1LL; constexpr ll MOD = 1e9 + 7; template void chmin(T &a, T b) { a = min(a, b); } template void chmax(T &a, T b) { a = max(a, b); } int main() { cin.tie(0); ios::sync_with_stdio(false); int n; cin >> n; vector dp(n + 1), a(n); for (int i = 0; i < n; i++) { cin >> a[i]; } dp[1] = 1; for (int i = 0; i < n; i++) { chmax(dp[i + 1], dp[i]); if (i > 0 && a[i] == a[i - 1]) { chmax(dp[i + 1], dp[i] + 1); } if (i > 0) { chmax(dp[i + 1], dp[i - 1] + 1); } } cout << dp[n] << endl; }