第一题: ``` In [34]: def dfs(left, right, a, b, c): ...: root = (left+right)//2 ...: if root in [a, b, c]: ...: return root ...: if a > root and b > root and c > root: ...: return dfs(root+1, right, a, b, c) ...: elif a < root and b < root and c < root: ...: return dfs(left, root-1, a, b, c) ...: else: ...: return root ...: In [35]: dfs(1, 15, 10, 13, 15) Out[35]: 12 In [36]: k = 4 In [37]: dfs(1, (1<<k)-1, 10, 13,15) Out[37]: 12 In [38]: ```