public bool CanPlaceFlowers(int[] flowerbed, int n)
if (flowerbed.Length == 1)
if (flowerbed.Length == 2)
if (flowerbed[0] == 0 && flowerbed[1] == 0)
if (flowerbed.Length >= 3)
for (int i = 0; i < flowerbed.Length; i++)
if (i + 1 < flowerbed.Length && flowerbed[i + 1] == 0 && i + 2 < flowerbed.Length
&& flowerbed[i + 2] == 0)
if (i + 1 < flowerbed.Length
&& i + 2 < flowerbed.Length
&& flowerbed[i + 2] == 1)
if (i - 1 >= 0 && flowerbed[i - 1] == 0 && i + 1 < flowerbed.Length && flowerbed[i + 1] == 0)
if (flowerbed[flowerbed.Length - 1] == 0
&& flowerbed[flowerbed.Length - 2] == 0
&& flowerbed[flowerbed.Length - 3] == 1)