题解 | #牛群放牧顺序#

牛群放牧顺序

https://www.nowcoder.com/practice/69f5f2d04d1c41df8d4e0691f6ef6935

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param ratings int整型一维数组 
     * @return int整型
     */
    public int min_pasture_time (int[] ratings) {
        // write code here
        int[] res = new int[ratings.length];
        res[0] = 1;
	  	//左边小就赋值左边+1,否则赋值1(因为最小放牧次数为1)
        for (int i = 1; i < ratings.length; i++) {
            res[i] = ratings[i] > ratings[i - 1] ? res[i - 1] + 1 : 1;
        }
	  	//计算最小放牧次数,因为遍历从倒数第二个元素开始,所以sum初始化倒数第一个元素
        int sum = res[ratings.length - 1];
	  	//右边比自己大就赋值右边+1,否则不动
        for (int i = ratings.length - 2; i >= 0; i--) {
            if(ratings[i] > ratings[i + 1])
                res[i] = res[i + 1] + 1;
            sum += res[i];
        }

        return sum;
    }
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 21:05
佬们看看应该怎么改
野猪不是猪🐗:牛客匿名,简历实名,抽象
点赞 评论 收藏
分享
二本牛马:谁在乎你这些东西?情感问题自己去解决,要发ppt去小红书发,你这个有大伙的春招重要吗
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务