题解 | #信封嵌套#

信封嵌套

http://www.nowcoder.com/practice/25fe1fc89c4c4e82bbc63df04bc6ca30

根据题意,将第一维的数据进行排序,第二维的数据防止重复计算进行逆序排序,转化为求最长的上升子序列的长度(O(nlogn))的时间复杂度。

import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        int n = reader.nextInt();
        int[][] letters = new int[n][2];
        int[] tmp = new int[n];

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < 2; j++) {
                letters[i][j] = reader.nextInt();
            }
        }
        // 贪心 按照第一个进行排序,按照第二列进行最长上升序列
        Arrays.sort(letters, (n1, n2) -> {
            if (n1[0] != n2[0]) {
                return n1[0] - n2[0];
            } else {
                return n2[1] - n1[1];
            }
        });
        
        for (int i = 0; i < n; i++) {
            tmp[i] = letters[i][1];
        }
        System.out.println(helper(tmp));
    }

    public static int helper(int[] nums) {
        int n = nums.length;
        int[] tails = new int[n + 1];
        int res = 0;
        for (int i = 0; i < n; i++) {
            int l = 0, r = res;
            while (l < r) {
                int m = (l + r) / 2;
                if (tails[m] < nums[i]) {
                    l = m + 1;
                } else {
                    r = m;
                }
            }
            tails[l] = nums[i];
            if (r == res) res += 1;
        }
        return res;
    }
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-17 14:38
干个蛋,干不了一点!!!!我真服了,还没搞完,很急。&nbsp;今天ddl,活没干完直接通宵,刺激。食堂很好吃,感觉离职的时候会胖10斤。mt喜欢能直接干活的,没空指导我,很难受。每个人都是笑嘻嘻的,但是从他们聊天中都能感受到各种试探,我有点慌了大家真的nb,都能准时完成工作下班,我羡慕啊!!!!!每天好累,想离职了💔
牛客26106072...:能去字节实习说明你的能力挺被认可的,实习中的这种累更有利于个人职场成长,试着当熬夜打游戏一样熬一熬,实习的意义就是看自己的差距和适应能力,总比等到工作时各种不适应辞职要好得多吧?
投递字节跳动等公司8个岗位
点赞 评论 收藏
分享
Lorn的意义:1.你这根本就不会写简历呀,了解太少了 2.你这些项目经历感觉真的没啥亮点啊,描述的不行,重写书写一下让人看到核心,就继续海投 注意七八月份ofer还是比较多的,越往后机会越少,抓住时机,抓紧检查疏漏,加油查看图片
点赞 评论 收藏
分享
06-20 17:42
东华大学 Java
凉风落木楚山秋:要是在2015,你这简历还可以月入十万,可惜现在是2025,已经跟不上版本了
我的简历长这样
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务