Leetcode 605. Can Place Flowers

Posted SnailTyan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode 605. Can Place Flowers相关的知识,希望对你有一定的参考价值。

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

1. Description

Can Place Flowers

2. Solution

**解析:**如果n为0,即要种花的数量为0,直接返回True即可。分析什么情况下不能种花,一种是当前地块已经种花了,一种是前一块地已经种花了,一种是后一块地已经种花了,如果都不符合上述三种情况,则当前地块可以种花,且要种的花数减一,每种一次花,判断剩余花的数量,重复上述过程即可。

  • Version 1
class Solution:
    def canPlaceFlowers(self, flowerbed: List[int], n: int) -> bool:
        if n == 0:
            return True
        for i in range(len(flowerbed)):
            if flowerbed[i] == 1 or (i>0 and flowerbed[i-1] == 1) or (i<len(flowerbed)-1 and flowerbed[i+1] == 1):
                continue
            flowerbed[i] = 1
            n -= 1
            if n == 0:
                return True
        return False 

Reference

  1. https://leetcode.com/problems/can-place-flowers/

以上是关于Leetcode 605. Can Place Flowers的主要内容,如果未能解决你的问题,请参考以下文章

605. Can Place Flowers(LeetCode)

leetcode 605. Can Place Flowers

leetcode-605-Can Place Flowers

Leetcode605. Can Place Flowers

605. Can Place Flowers种花问题leetcode

LeetCode 605. Can Place Flowers (可以种花)