You are given an integer array nums sorted in ascending order, and an integer target.

Suppose that nums is rotated at some pivot unknown to you beforehand (i.e., [0,1,2,4,5,6,7] might become [4,5,6,7,0,1,2]).

If target is found in the array return its index, otherwise, return -1


Example 1:

Input: nums = [4,5,6,7,0,1,2], target = 0
Output: 4

Example 2:

Input: nums = [4,5,6,7,0,1,2], target = 3
Output: -1

Constraints:

  • 1 <= nums.length <= 5000
  • -10^4 <= nums[i] <= 10^4
  • All values of nums are unique.
  • nums is guranteed to be rotated at some pivot.
  • -10^4 <= target <= 10^4


Solution Hunt:

// Here we are giving the function only.

     
        int search(vector<int>  nums, int target) 
{      int c=0;
        for(int i=0;i<nums.size();i++)
        {
            if(nums[i]==target)
                c++;  
        }
     
        if(c!=0)
        {
            return find(nums.begin(),nums.end(),target)-nums.begin();
        
        }
         else 
         return -1;
  }