最長上公升子串行

2021-08-26 02:42:59 字數 664 閱讀 6148

設有n個整數組成的數列,記為:a(1)、a(2)、……、a(n)且a(i)<>a(j)  (i<>j),若存在i1例如13,7,9,16,38,24,37,18,44,19,21,22,63,15。例中13,16,18,19,21,22,63就是乙個長度為7的上公升序列,同時也有7 ,9,16,18,19,21,22,63長度為8的上公升子串行。

輸入n個不同的整數(n<=100)

輸出有2行,第1行是最長上公升子串行的長度

第2行是最長上公升子串行,如果有多個最長上公升子串行,則輸出排在最左邊的子串行。

300 250 275 252 200 138 245
max=2

250 275

#includeusing namespace std;

int a[110],b[110],c[110];

using namespace std;

int main()

for(i=n-1;i>=1;i--)

if(max>0)

}k=1;

for(j=1;j<=n;j++)

if(b[j]>b[k])

k=j;

cout<<"max="

cout

}

最長上公升子串行

問題描述 乙個數的序列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 等等...

最長上公升子串行

最長上公升子串行問題是各類資訊學競賽中的常見題型,也常常用來做介紹動態規劃演算法的引例,筆者接下來將會對poj上出現過的這類題目做乙個總結,並介紹解決lis問題的兩個常用 演算法 n 2 和 nlogn 問題描述 給出乙個序列a1,a2,a3,a4,a5,a6,a7.an,求它的乙個子串行 設為s1...

最長上公升子串行

最長上公升子串行問題 給出乙個由n個數組成的序列x 1.n 找出它的最長單調上公升子串行。即求最大的m和a1,a2 am,使得a1動態規劃求解思路分析 o n 2 經典的o n 2 的動態規劃演算法,設a i 表示序列中的第i個數,f i 表示從1到i這一段中以i結尾的最長上公升子串行的長度,初始時...