leetcode 605. Can Place Flowers
2017-08-17 09:45
483 查看
原题:
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:
Example 2:
Note:
The input array won't violate no-adjacent-flowers rule.
The input array size is in the range of [1, 20000].
n is a non-negative integer which won't exceed the input array size.
看看一个花室里面能放多少花。。
代码如下:
bool canPlaceFlowers(int* flowerbed, int flowerbedSize, int n) {
for(int l=0;l<flowerbedSize&&n>0;l++)
{
if(*(flowerbed+l)==0)
{
int flag=0;
if(l-1>=0)
{
if(*(flowerbed+l-1)==0)
flag++;
}
else
flag++;
if(l+1<flowerbedSize)
{
if(*(flowerbed+l+1)==0)
flag++;
}
else
flag++;
if(flag==2)
{
*(flowerbed+l)=1;
n--;
}
}
}
if(n==0)
return true;
return false;
}顺序检测相邻的花,不影响就好了。
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
Note:
The input array won't violate no-adjacent-flowers rule.
The input array size is in the range of [1, 20000].
n is a non-negative integer which won't exceed the input array size.
看看一个花室里面能放多少花。。
代码如下:
bool canPlaceFlowers(int* flowerbed, int flowerbedSize, int n) {
for(int l=0;l<flowerbedSize&&n>0;l++)
{
if(*(flowerbed+l)==0)
{
int flag=0;
if(l-1>=0)
{
if(*(flowerbed+l-1)==0)
flag++;
}
else
flag++;
if(l+1<flowerbedSize)
{
if(*(flowerbed+l+1)==0)
flag++;
}
else
flag++;
if(flag==2)
{
*(flowerbed+l)=1;
n--;
}
}
}
if(n==0)
return true;
return false;
}顺序检测相邻的花,不影响就好了。
相关文章推荐
- leetcode 605. Can Place Flowers 间隔种花 + 补齐元素然后遍历
- Leetcode 605. Can Place Flowers(Easy)
- LeetCode 605.Can Place Flowers
- [leetcode]: 605. Can Place Flowers
- 【leetcode】605. Can Place Flowers(Python & C++)
- leetcode -- 605. Can Place Flowers 【边界处理 + 数学规律】
- LeetCode-605. Can Place Flowers
- LeetCode 605 : Can Place Flowers
- [LeetCode]605. Can Place Flowers
- LeetCode 605. Can Place Flowers 自己的解法
- 【LeetCode】605. Can Place Flowers 解题报告
- leetcode 605. Can Place Flowers python
- The Solution to Leetcode 605 Can Place Flowers
- LeetCode: 605. Can Place Flowers
- [leetcode]605. Can Place Flowers
- LeetCode 605. Can Place Flowers (可以种花)
- LeetCode 605. Can Place Flowers
- leetcode 605[easy]---Can Place Flowers
- leetcode 605. Can Place Flowers
- LeetCode 605. Can Place Flowers