Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
141518 梁乃元 最长连续上升子序列 C++ 通过 100 16 MS 1412 KB 586 2024-04-05 16:49:59

Tests(20/20):


# include <bits/stdc++.h> using namespace std ; int a [100005] , f [100005] , g [100005] ; int main() { int n , ans = -1 ; cin >> n ; for ( int i = 1 ; i <= n ; i ++ ) { cin >> a [i] ; } f [1] = 1 ; for ( int i = 1 ; i <= n ; i ++ ) { f [i] = ( a [i - 1] < a [i] ) ? f [i - 1] + 1 : 1 ; } for ( int i = n ; i >= 1 ; i -- ) { g [i] = ( a [i] < a [i + 1] ) ? g [i + 1] + 1 : 1 ; } for ( int i = 1 ; i <= n ; i ++ ) { ( a [i + 1] >= a [i - 1] + 2 ) ? ans = max ( ans , f [i - 1] + g [i + 1] + 1 ) : 1 ; } cout << ans << endl ; return 0; }


测评信息: