C语言 | Leetcode C语言题解之第354题俄罗斯套娃信封问题

题目:

题解:

cpp 复制代码
int cmp(int** a, int** b) {
    return (*a)[0] == (*b)[0] ? (*b)[1] - (*a)[1] : (*a)[0] - (*b)[0];
}

int maxEnvelopes(int** envelopes, int envelopesSize, int* envelopesColSize) {
    if (envelopesSize == 0) {
        return 0;
    }

    qsort(envelopes, envelopesSize, sizeof(int*), cmp);

    int n = envelopesSize;
    int f[n];
    for (int i = 0; i < n; i++) {
        f[i] = 1;
    }
    int ret = 1;
    for (int i = 1; i < n; ++i) {
        for (int j = 0; j < i; ++j) {
            if (envelopes[j][1] < envelopes[i][1]) {
                f[i] = fmax(f[i], f[j] + 1);
            }
        }
        ret = fmax(ret, f[i]);
    }
    return ret;
}
相关推荐
Morwit18 分钟前
【力扣hot100】 85. 最大矩形
c++·算法·leetcode·职场和发展
爱编码的小八嘎31 分钟前
C语言完美演绎4-2
c语言
mftang1 小时前
C语言条件编译详解
c语言·开发语言
啊哦呃咦唔鱼1 小时前
LeetCode hot100-438 找到字符串中所以字母异位词
算法·leetcode·职场和发展
重生之后端学习1 小时前
136. 只出现一次的数字
开发语言·算法·leetcode·职场和发展·深度优先
luckycoding1 小时前
LCR 014.字符串的排列
leetcode
smj2302_796826521 小时前
解决leetcode第3869题.统计区间内奇妙数的数目
python·算法·leetcode
TracyCoder1232 小时前
LeetCode Hot100(66/100)——118. 杨辉三角
算法·leetcode·职场和发展
葳_人生_蕤2 小时前
Leetcode HOT 100
算法·leetcode·职场和发展
无尽的罚坐人生2 小时前
hot 100 35. 搜索插入位置
数据结构·算法·leetcode·二分查找