使用TreeSet

import java.util.*;

public class Main {
    private static TreeSet<Integer> set=new TreeSet<>();

    public static void insertValue(int x) {
        // TODO: 实现插入逻辑
        if(set.contains(x)){
            return ;
        }
        set.add(x);
    }

    public static void eraseValue(int x) {
        // TODO: 实现删除逻辑
        set.remove(x);
    }

    public static boolean xInSet(int x) {
        // TODO: 实现存在性检查
        if(set.contains(x)){
            return true;
        }
        return false;
    }

    public static int sizeOfSet() {
        // TODO: 返回集合大小
        return set.size();
    }

    public static int getPre(int x) {
        // TODO: 实现找前驱
        Integer a=set.lower(x);
        return a==null?-1:a;
    }

    public static int getBack(int x) {
        Integer a=set.higher(x);
        return a==null?-1:a;
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int q = scanner.nextInt();
        while (q-- > 0) {
            int op = scanner.nextInt();
            switch (op) {
                case 1:
                    insertValue(scanner.nextInt());
                    break;
                case 2:
                    eraseValue(scanner.nextInt());
                    break;
                case 3:
                    System.out.println(xInSet(scanner.nextInt()) ? "YES" : "NO");
                    break;
                case 4:
                    System.out.println(sizeOfSet());
                    break;
                case 5:
                    System.out.println(getPre(scanner.nextInt()));
                    break;
                case 6:
                    System.out.println(getBack(scanner.nextInt()));
                    break;
            }
        }
        scanner.close();
    }
}