2020完美世界Java笔试之礼物盒子

  笔试有4个题目:具体忘了。。
    //代理服务器
    //礼物盒子
    //背包问题
    //修路问题

礼物盒子

盒子嵌套问题,大盒子里放小盒子,长度与宽度都比上一个大盒子小,求最大的嵌套的盒子数目。
输入

 9
 3 4
 2 3
 4 5
 1 3
 2 2
 3 6
 1 2
 3 2
 2 4

输出:4
解析:
1 2
2 3
3 4
4 5

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

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[][] a = new int[n][2];
        for (int i = 0; i < n; i++) {
            a[i][0] = sc.nextInt();
            a[i][1] = sc.nextInt();
        }
         // straightSort(a);
        Arrays.sort(a, new Comparator<int[]>() {
            @Override
            public int compare(int[] o1, int[] o2) {
                if (o1[0] == o2[0])
                    return o1[1] - o2[1];
                return o1[0] - o2[0];
            }
        });
        for (int i = 0; i < a.length; i++) {
            System.out.println(a[i][0] + "\t" + a[i][1]);
        }
        int ans = 1;
        int t0 = a[0][0];
        int t1 = a[0][1];
        for (int i = 1; i < a.length; i++) {
            if (t0 < a[i][0] && t1 < a[i][1]) {
                ans++;
                t0 = a[i][0];
                t1 = a[i][1];
            }

        }
        System.out.println(ans);
    }

    public static void straightSort(int[][] a) {
        int len = a.length;
        for (int i = 1; i < len; i++) {
            int t = a[i][0];
            int t1 = a[i][1];
            int j = i;
            while (j > 0 && t < a[j - 1][0]) {
                a[j][0] = a[j - 1][0];
                a[j][1] = a[j - 1][1];
                j--;
            }
            a[j][0] = t;
            a[j][1] = t1;
            j = i;
            while (j > 0) {
                if (a[j][0] == a[j - 1][0]) {
                    if (a[j][1] < a[j - 1][1]) {
                        int tmp = a[j][1];
                        a[j][1] = a[j - 1][1];
                        a[j - 1][1] = tmp;
                    }
                }
                j--;
            }
        }
    }
}

你可能感兴趣的:(笔试编程题)