public static int recur(int n) {
if (n == 0) return 0;
return n + recur(n / 2);
}
// Call: System.out.println(recur(10));What is printed?
- Acheck_circle
18
- B
20
- C
17
- D
16
Explanation
recur(10) = 10 + recur(5). recur(5) = 5 + recur(2). recur(2) = 2 + recur(1). recur(1) = 1 + recur(0) = 1. So 10+5+2+1 = 18.