import java.util.Scanner; import java.util.TreeSet; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner=new Scanner(System.in); int q=scanner.nextInt(); TreeSet<Integer> set=new TreeSet<>(); for (int i = 0; i < q; i++) { int op=scanner.nextInt(); int x=scanner.nextInt(); if(op==1) { if(!set.add(x)) { System.out.println("Already Exist"); } }else if(op==2) { if(set.isEmpty()) { System.out.println("Empty"); }else { if(set.contains(x)) { set.remove(x); System.out.println(x); }else { Integer a1=set.lower(x); Integer a2=set.higher(x); if(a1==null||a2==null) { set.remove(a1==null?a2:a1); System.out.println(a1==null?a2:a1); }else { long d1=(long)x-a1; long d2=(long)a2-x; if(d1<=d2) { set.remove(a1); System.out.println(a1); }else { set.remove(a2); System.out.println(a2); } } } } } } } }
这一题我后面一直是10个案例过9个,问了下Ai,原来是当前后距离相等时,要求返回值更小的,这一点我那个时候没有注意到