到最近的人的最大距离

class Solution {
    public int maxDistToClosest(int[] seats) {
        int i=0,j=seats.length-1;
        int head=0,middle=0,tail=0;
        int old=0,newnum=0;
        for(;seats[i]==0;i++) head++;
        for(;seats[j]==0;j--) tail++;
        for(i=i+1;i<=j;i++){
            if(seats[i]==0) newnum++;
            else{
                if(newnum>old){
                    old=newnum;
                }
                newnum=0;
            }
        }
        middle=(old+1)/2;
        if(head>tail&&head>middle) return head;
        else if(head<tail&&tail>middle) return tail;
        else return middle;
        
    }
}

猜你喜欢

转载自blog.csdn.net/tengfeipu/article/details/81433422
今日推荐