对于i,我们二分查找找到第一个大于a[i]的j,同样二分查找找到第一个a[k] < a[i]的k。我们建立了递推关系,一共N个状态,每个状态O(log)转移,总体时间复杂度就是O(NlogN)随着下标右移,区间最大值不会变大,那么后面2倍大于旧的最大值的数的二倍仍然大于新的最大值。case3提示我们一件事情:如果存在某个位置永远不停止,那么所有位置都满足永远不停止。那么对于每个位置我们要找到第一个满足a[i] < max / 2的 i。否则, ans[i] = k - i + ans[k % N]