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;
}
相关推荐
Tomhex2 小时前
C语言内存安全防护指南
c语言
230万光年的思念4 小时前
zerotier连不上的问题
c语言
XiYang-DING7 小时前
【LeetCode】Hash | 136.只出现一次的数字
算法·leetcode·哈希算法
Fanfanaas7 小时前
Linux 基础开发工具(二)
linux·运维·服务器·c语言
leaves falling7 小时前
C/C++ const:修饰变量和指针的区别(和引用底层关系)
c语言·开发语言·c++
网域小星球7 小时前
C 语言从 0 入门(十二)|指针与数组:数组名本质、指针遍历数组
c语言·算法·指针·数组·指针遍历数组
Tairitsu_H7 小时前
C语言:排序(一)
c语言·数据结构·排序
12.=0.8 小时前
【stm32_5】Systick嘀嗒定时器、解析时钟源、分析时钟树、应用Systick设计延时
c语言·stm32·单片机·嵌入式硬件
嘻嘻哈哈樱桃9 小时前
俄罗斯套娃信封问题力扣--354
算法·leetcode·职场和发展
田梓燊9 小时前
2026/4/12 leetcode 1320
算法·leetcode·职场和发展