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;
}
相关推荐
小邓   ༽24 分钟前
C语言课件(非常详细)
java·c语言·开发语言·python·eclipse·c#·c语言课件
sin_hielo41 分钟前
leetcode 3512
数据结构·算法·leetcode
Elias不吃糖43 分钟前
LeetCode--130被围绕的区域
数据结构·c++·算法·leetcode·深度优先
烛衔溟43 分钟前
C语言算法:动态规划基础
c语言·算法·动态规划·算法设计·dp基础
sinat_602035361 小时前
翁恺 6-
c语言
誰能久伴不乏1 小时前
进程通信与线程通信:全面总结 + 使用场景 + 优缺点 + 使用方法
linux·服务器·c语言·c++
myw0712052 小时前
湘大头歌程-Ride to Office练习笔记
c语言·数据结构·笔记·算法
im_AMBER2 小时前
Leetcode 63 定长子串中元音的最大数目
c++·笔记·学习·算法·leetcode
小白程序员成长日记3 小时前
2025.11.29 力扣每日一题
数据结构·算法·leetcode