社区讨论

零分求调

B3637最长上升子序列参与者 2已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@lrlqnnj2
此快照首次捕获于
2024/01/20 15:18
2 年前
此快照最后确认于
2024/01/20 18:02
2 年前
查看原帖
C
#include <stdio.h>

int n, max;
int num[5005];
int dp[5005];

int main()
{
    scanf("%d", &n);
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &num[i]);
        dp[i] = 1;
    }
    for (int i = 0; i < n; i++)
    {
        for (int j = i; j < n; j++)
        {
            if(num[j] < num[i])
                dp[i] = dp[i] > (dp[j] + 1) ? dp[i] : (dp[j] + 1);
        }
        if (dp[i] > max)
            max = dp[i];
    }
    printf("%d", max);
    return 0;
}
刚学动规的蒟蒻一枚

回复

4 条回复,欢迎继续交流。

正在加载回复...