鏈結:牛牛的數列
時間限制:c/c++ 1秒,其他語言2秒牛牛現在有乙個n個數組成的數列,牛牛現在想取乙個連續的子串行,並且這個子串行還必須得滿足:最多隻改變乙個數,就可以使得這個連續的子串行是乙個嚴格上公升的子串行,牛牛想知道這個連續子串行最長的長度是多少。空間限制:c/c++ 32768k,其他語言65536k 64bit io
format: %lld
輸入描述:
輸入包括兩行,第一行包括乙個整數n(1 ≤ n ≤ 10^5),即數列的長度;
第二行n個整數a_i, 表示數列中的每個數(1 ≤ a_i ≤ 10^9),以空格分割。
輸出描述:
輸出乙個整數,表示最長的長度。
示例
輸入6 7 2 3 1 5 6
輸出
5
#include
using
namespace std;
const
int maxn =
1e5+3;
// a用於陣列儲存,後兩個分別儲存左連續上公升序列,右連續下降序列
int a[maxn]
, left_increase[maxn]
, right_decrease[maxn]
;int n;
void
init
(int n)
intmain()
// 找右連續下降序列
for(
int i = n -
2; i >=
0; i--
)int ans = left_increase[n -1]
;// 忽略第i個數
for(
int i =
1; i < n -
1; i++)}
cout << ans << endl;
return0;
}
牛客網 牛牛的數列
題目描述 牛牛現在有乙個n個數組成的數列,牛牛現在想取乙個連續的子串行,並且這個子串行還必須得滿足 最多隻改變乙個數,就可以使得這個連續的子串行是乙個嚴格上公升的子串行,牛牛想知道這個連續子串行最長的長度是多少。一開始看到這個題,總是被繞進 改變乙個數 中,就想說是不是遍歷陣列,然後每個數都嘗試改變...
牛牛的數列 牛客網
牛牛現在有乙個n個數組成的數列,牛牛現在想取乙個連續的子串行,並且這個子串行還必須得滿足 最多隻改變乙個數,就可以使得這個連續的子串行是乙個嚴格上公升的子串行,牛牛想知道這個連續子串行最長的長度是多少。輸入包括兩行,第一行包括乙個整數n 1 n 10 5 即數列的長度 第二行n個整數a i,表示數列...
牛客 牛牛與陣列
牛牛喜歡這樣的陣列 1 長度為n 2 每乙個數都在1到k之間 3 對於任意連續的兩個數a,b,a b 與 a b 0 兩個條件至少成立乙個 請問一共有多少滿足條件的陣列,對1e9 7取模 輸入兩個整數n,k 1 n 10 1 k 100000輸出乙個整數示例1 複製2 2 複製3 示例2複製9 1 ...