首页 > 阿里26号笔试,第一道题,有没有更好的方法
头像
25届海投王
编辑于 2021-04-17 09:10
+ 关注

阿里26号笔试,第一道题,有没有更好的方法

int GetMaxCards(int[] cards){
        int sum = 0,max = 0;
        boolean have0 = false;
        int idx0 =0;
        for(int i=0;i<cards.length;){
            if(cards[i]==1){
                sum++;
                i++;
            }else if(have0){
                max = Math.max(sum,max);
                have0=false;
                sum = 0;
                i=idx0+1;
            }else {
                if(sum!=0){
                    have0=true;
                }
                idx0 = i;
                i++;
            }
        }
        max = Math.max(sum,max);
        if(max == cards.length) max--;
        return max;
    }

全部评论

(3) 回帖
加载中...
话题 回帖