题解 | #最大放牛数#

最大放牛数

https://www.nowcoder.com/practice/5ccfbb41306c445fb3fd35a4d986f8b2

知识点

模拟,贪心

思路

当i与i-1位置都为0时,这个位置0变为1,同时n--。

特判:i=0且i位置为0时,也要将这个位置变为1,同时n--。

最后当n<=0,可以返回true。否则返回false

代码c++

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param pasture int整型vector 
     * @param n int整型 
     * @return bool布尔型
     */
    bool canPlaceCows(vector<int>& pasture, int n) {
        // write code here
        int t=0;
        int ans=0;
        for(int i=0;i<pasture.size()&&n;i++)
        {     if(i==0&&pasture[i]==0)
               {pasture[i]=1;
                n--;
               }
              else if(pasture[i-1]==0&&pasture[i]==0)
              {
                pasture[i]=1;
                n--;
              }
        }

        if(!n)return true;
        else return false;
    }
};
全部评论

相关推荐

一只乌鸦:这不才9月吗,26到明年毕业前能一直找啊,能拿下提前批,转正的,offer打牌的都是有两把刷子的,为什么非要跟他们比。如果别人是9本硕+金牌+好几段大厂实习呢?如果别人是双非通天代呢?如果别人是速通哥呢?,做好自己就行了,我们做不到他们一样提前杀死比赛,但晚点到终点也没啥关系吧
双非应该如何逆袭?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务