C语言求助
查看原帖
C语言求助
265105
dove_whispers楼主2023/3/27 18:31

只过了两个点,主打一个不理解,也做不出反例

#include <stdio.h>
int max(int a,int b){
    return a>b?a:b;
}
int main() {
    int n,a[5005],dp[5005];
    scanf("%d",&n);
    for(int i=0;i<n;i++)
        scanf("%d",&a[i]);
    for(int i=0;i<n;i++)
        dp[i] = 1;
    for(int i=1;i<n;i++)
        for(int j=0;j<i;j++)
            if(a[i]>a[j])
                dp[i]=max(dp[i],dp[j]+1);
    printf("%d\n",dp[n-1]);
    return 0;
}
2023/3/27 18:31
加载中...