第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

C++語(yǔ)言編程 單調(diào)遞增最長(zhǎng)子序列

C++語(yǔ)言編程 單調(diào)遞增最長(zhǎng)子序列

C++
侃侃爾雅 2018-10-29 00:00:50
7-1 單調(diào)遞增最長(zhǎng)子序列設(shè)計(jì)一個(gè)O(n2)時(shí)間的算法,找出由n個(gè)數(shù)組成的序列的最長(zhǎng)單調(diào)遞增子序列。輸入格式:輸入有兩行: 第一行:n,代表要輸入的數(shù)列的個(gè)數(shù) 第二行:n個(gè)數(shù),數(shù)字之間用空格格開(kāi)輸出格式:最長(zhǎng)單調(diào)遞增子序列的長(zhǎng)度輸入樣例:在這里給出一組輸入。例如:51 3 5 2 9輸出樣例:在這里給出相應(yīng)的輸出。例如:4
查看完整描述

2 回答

?
函數(shù)式編程

TA貢獻(xiàn)1807條經(jīng)驗(yàn) 獲得超9個(gè)贊

 #include <stdio.h>

#define MAX_N 1000

int dp[MAX_N], a[MAX_N];
int n;

void input()
{
    scanf("%d", &n);
    for(int i = 0; i < n; ++i)
        scanf("%d", &a[i]);
}

int max_(int a, int b)
{
    return a > b ? a : b;
}

void slove()
{
    //注意要res保存結(jié)果
    int res = 0;
    for(int i = 0; i < n; ++i)
       {

        for(int j = 0; j < i; ++j)
            if(a[j] < a[i])
                dp[i] = max_(dp[i], dp[j] + 1);

        res = max_(dp[i], res);
       }
    printf("%d\n", res + 1);

}

int main()
{
    input();
    slove();
    return 0;
}



查看完整回答
反對(duì) 回復(fù) 2018-11-03
  • 2 回答
  • 0 關(guān)注
  • 1248 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)