您的位置:首页 > 其它

LeetCode@Array_605_Can_Place_Flowers

2017-07-01 12:01 351 查看
Suppose you have a long flowerbed in which some of the plots are planted and some are not. However, flowers cannot be planted in adjacent plots - they would compete for water and both would die.

Given a flowerbed (represented as an array containing 0 and 1, where 0 means empty and 1 means not empty), and a number n, return if n new flowers can be planted in it without violating
the no-adjacent-flowers rule.

Example 1:

Input: flowerbed = [1,0,0,0,1], n = 1
Output: True


Example 2:

Input: flowerbed = [1,0,0,0,1], n = 2
Output: False


java:

public class Solution {
public boolean canPlaceFlowers(int[] flowerbed, int n)
{
int res = 0;
int len = flowerbed.length;

for(int i = 0; i<len ;i++)
{
if(flowerbed[i] == 0)
{
int prev = (i == 0)? 0:flowerbed[i-1];
int next = (i == len-1)? 0:flowerbed[i+1];
if(prev == 0 && next == 0)
{
res++;
flowerbed[i] = 1;
}
}
}
return n <= res;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: