Untitled
unknown
c_cpp
5 months ago
697 B
1
Indexable
#include <bits/stdc++.h> using namespace std; int main() { #ifdef _DEBUG freopen("input.txt", "r", stdin); // freopen("output.txt", "w", stdout); #endif int n; cin >> n; vector<int> a(n); for (int i = 0; i < n; ++i) { cin >> a[i]; } int ans = 1; vector<int> rg(n, 1); for (int i = n - 2; i >= 0; --i) { if (a[i + 1] > a[i]) rg[i] = rg[i + 1] + 1; ans = max(ans, rg[i]); } vector<int> lf(n, 1); for (int i = 1; i < n; ++i) { if (a[i - 1] < a[i]) lf[i] = lf[i - 1] + 1; ans = max(ans, lf[i]); } for (int i = 0; i < n - 2; ++i) { if (a[i] < a[i + 2]) ans = max(ans, lf[i] + rg[i + 2]); } cout << ans << endl; return 0; }
Editor is loading...
Leave a Comment