試題描述
給定乙個整數序列a1、a2…an,求這個序列中的乙個子串行(不一定連續),使得這個序列中的元素嚴格遞增,並且這個序列最長。
輸入第一行,乙個整數n。
第二行,n個整數,a1、a2...an。
輸出一行,乙個整數,表示你所求的最大長度。
輸入示例
41 3 2 4
輸出示例
3其他說明
n<=1000,給定的序列中所有元素均為正整數,且不超過10^9。
c程式:
#includeusingnamespace
std;
int n, a[10000001], b[10000001
], zd;
intmain()
for(int i = 0; i < n; ++i)
}zd=max(zd,b[i]);
}printf("%d
", zd);
return0;
}
最長不降子串行
原文 這題目是經典的dp題目,也可叫作lis longest increasing subsequence 最長上公升子串行或者 最長不下降子串行。很基礎的題目,有兩種演算法,複雜度分別為o n logn 和o n 2 一 問題描述 設有由n個不相同的整數組成的數列,記為 a 1 a 2 a n 且...
C 飛彈攔截 求最長不降子串行
c 飛彈攔截 求最長不降子串行 時間限制 1 sec 記憶體限制 128 mb 題目描述 某國為了防禦敵國的飛彈襲擊,發展出一種飛彈攔截系統。但是這種飛彈攔截系統有乙個缺陷 雖然它的第一發炮彈能夠到達任意的高度,但是以後每一發炮彈都不能高於前一發的高度。某天,雷達捕捉到敵國的飛彈來襲。由於該系統還在...
求最長不降子串行(動態規劃)
求最長不下降子串行 動態規劃 狀態轉移方程 length i 1 length j j為data i data j 的情況下能使length j 取到最大的值 初始情況length 1 1 且length 0 0,這樣求出來的length j 才可以取到0 include int data 15 下...