Big Box

#include <stdio.h>

#define N 500

int height[N];
int n;

int main() {
    scanf("%d", &n);
    if (n <= 0) {
        printf("0");
        return 0;
    }
    for (int i = 0; i < n; ++i) {
        scanf("%d", &height[i]);
    }
    //用于保存已高度i为结尾的箱子的最大选择个数
    int res[n];
    for (int i = 0; i < n; ++i) {
        res[i] = 1;
        for (int j = 0; j < i; ++j) {
            if ((height[j] < height[i]) && (res[i] < res[j] + 1)) {
                res[i] = res[j] + 1;
            }
        }
    }

    int max = res[0];
    for (int i = 0; i < n; ++i) {
        max = max > res[i] ? max : res[i];
    }
    printf("%d", max);
    return 0;
}

 

posted @ 2019-09-27 17:20  Practical  阅读(524)  评论(0编辑  收藏  举报