1967: 循环有序数组查找

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:53 Solved:27

Description

整数数组 nums 按升序排列,数组中的值互不相同 。

在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k] nums[k+1] ... nums[n-1] nums[0] nums[1] ... nums[k-1]](下标 从 0 开始 计数)。例如, [0124567] 在下标 3 处经旋转后可能变为 [4567012] 。

Input

输入包含两行:
 第一行包含两个整数 n 和 target,分别表示数组的长度和要查找的目标值。
 第二行包含 n 个整数,表示循环有序数组的元素。

Output

输出一个整数,表示目标值 target 在数组中的索引。如果目标值不存在于数组中,输出 -1

Sample Input Copy

5 5
3 4 5 1 2

Sample Output Copy

2