354RussianDollEnvelopes

来源:互联网 发布:unity3d怎么导入fbx 编辑:程序博客网 时间:2024/05/16 07:32

题意:给定一系列的标有(w, h)的信封,当且仅当一个信封的长和宽都小于另一个信封时,才能装进去。最多能嵌套多少个信封?

思路:以w为主序,h为次序将信封排序,当前信封标记为(w, h),找到宽度大于w的信封中且首个高度大于h的信封。数据结构二维数组,一维表示信封数,二维表示(w,h)。

参考leetcode discuss,注意h为降序,否则会导致相同宽度的信封加入计数。f(n组数) = f(n-1组数) + 1, 将w相同的信封视为同一组,第n组的最大h大于第(n-1)的h,信封数才能加1,而且能保证统计的信封中w都不同。



0 0