POJ百煉 2757 最長上公升子串行

2021-07-10 07:24:07 字數 1304 閱讀 4935

2757:最長上公升子串行

檢視 提交 統計 提示 提問

總時間限制: 2000ms 記憶體限制: 65536kb

描述 乙個數的序列bi,當b1 < b2 < … < bs的時候,我們稱這個序列是上公升的。對於給定的乙個序列(a1, a2, …, an),我們可以得到一些上公升的子串行(ai1, ai2, …, aik),這裡1 <= i1 < i2 < … < ik <= n。比如,對於序列(1, 7, 3, 5, 9, 4, 8),有它的一些上公升子串行,如(1, 7), (3, 4, 8)等等。這些子串行中最長的長度是4,比如子串行(1, 3, 5, 8).

你的任務,就是對於給定的序列,求出最長上公升子串行的長度。

輸入 輸入的第一行是序列的長度n (1 <= n <= 1000)。第二行給出序列中的n個整數,這些整數的取值範圍都在0到10000。

輸出 最長上公升子串行的長度。

樣例輸入

7 1 7 3 5 9 4 8

樣例輸出

4我想寫乙個動態規劃的專題,越想越覺得很有必要

**

#include

#include

#include

#include

#include

using

namespace

std;

int main()

}b[i]=num+1;//前i位的最長上公升子串行長度

}int flag=-1;//記錄陣列b中的最大值

for(int i=1; i<=n; i++)

下面是我第二天又寫的**,跟上面並沒有什麼區別

#include

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace

std;

//以後不要改標頭檔案

//最長上公升子串行

int main()

; //記錄前i位的最長子序列長度

b[0]=1;

for(int i=1; iint num=0;//暫時記錄前i位最長子序列長度

for(int j=0; jif(a[i]>a[j])

int maxn=0;

for(int i=0;iif(maxnprintf("%d\n",maxn);

}return

0;}

oj百煉2757 最長上公升子串行

oj百煉2757 最長上公升子串行 總時間限制 2000ms 記憶體限制 65536kb 描述乙個數的序列bi 當b1 b2 bs 的時候,我們稱這個序列是上公升的。對於給定的乙個序列 a1 a2 an 我們可以得到一些上公升的子串行 ai1 ai2 aik 這裡1 i1 i2 ik n。比如,對於...

最長上公升子串行(百練2757)

總時間限制 2000ms 記憶體限制 65536kb 描述 乙個數的序列 bi,當 b1 b2 bs的時候,我們稱這個序列是上公升的。對於給定的乙個序列 a1,a2 an 我們可以得到一些上公升的子串行 ai1,ai2 aik 這裡1 i1 i2 ik n。比如,對於序列 1,7,3,5,9,4,8...

百練 2757 最長上公升子串行

總時間限制 2000ms 記憶體限制 65536kb 描述乙個數的序列 bi,當 b1 b2 bs的時候,我們稱這個序列是上公升的。對於給定的乙個序列 a1,a2 an 我們可以得到一些上公升的子串行 ai1,ai2 aik 這裡1 i1 i2 ik n。比如,對於序列 1,7,3,5,9,4,8 ...