ACM 動態規劃 最長上升子序列(課上)

來源:互聯網
上載者:User

標籤:

輸入資料

 

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

 

輸出要求

 

最長上升子序列的長度。

 

輸入範例

7

1 7 3 5 9 4 8

輸出範例

4

 

/*    課上題目    最長上升子序列*/# include <iostream>using namespace std;const int MAX = 1e5;int a[MAX + 10];int len[MAX + 10];int main(){    int i, j, n;    cin >> n;    for(i = 1;i <= n; i++ )        cin >> a[i];    len[1] = 1;    //求以第i 個數為終點的最長上升子序列的長度    for(i = 2; i <= n; i++)    {        int nTmp = 0; //記錄第i 個數左邊子序列最大長度        //搜尋以第i 個數左邊數為終點的最長上升子序列長度        for(j = 1; j < i; j++)        {            if(a[i] > a[j])            {                if(nTmp < len[j])                nTmp = len[j];            }        }        len[i] = nTmp + 1;    }    int max = -1;    for(i = 1;i <= n; i++)    if(max < len[i])    max = len[i];    cout << max << endl;    return 0;}

 

ACM 動態規劃 最長上升子序列(課上)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.