class Solution {
public:
    int fk(int l,int r,vector<int>& nums){
        if(nums[l]<nums[r]||l==r)return nums[l];
        int m = (l+r)/2;
        int k1 = fk(l,m,nums);
        int k2 = fk(m+1,r,nums);
        return min(k1,k2);
    }
   
    int findMin(vector<int>& nums) {
        int n = nums.size();
        return fk(0,n-1,nums);
    }
};

posted on 2017-07-12 12:54  朽木の半夏  阅读(86)  评论(0编辑  收藏  举报