第五题解法 100% public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); List<Long> res = new ArrayList<>(); for (int i = 0; i < n; i++) { Long x = sc.nextLong(); int level = sc.nextInt(); if(level == 1){ res.add(1L); continue; } if(Math.pow(2,level) > x){ res.add(-1L); continue; } while(!((x < Math.pow(2,level)) && x >= Math.pow(2,level -1))){ x = x>>1; } res.add(x); } for (int i = 0; i < res.size(); i++) { System.out.println(res.get(i)); } } }