leetcode 605. Can Place Flowers | 605. 种花问题

素颜马尾好姑娘i 2022-10-17 05:24 250阅读 0赞

题目

https://leetcode-cn.com/problems/can-place-flowers/
在这里插入图片描述

题解

在这里插入图片描述

  1. class Solution {
  2. public boolean canPlaceFlowers(int[] flowerbed, int n) {
  3. int count = 0;
  4. int max = 0;
  5. boolean emptyHead = flowerbed[0] != 1;
  6. for (int i : flowerbed) {
  7. if (i == 0) {
  8. count++;
  9. } else {
  10. if (emptyHead) { // head
  11. max += count / 2;
  12. emptyHead = false;
  13. } else { // mid
  14. max += (count - 1) / 2;
  15. }
  16. count = 0;
  17. }
  18. }
  19. // tail
  20. if (flowerbed[flowerbed.length - 1] == 0) {
  21. if (emptyHead) max += (count + 1) / 2; // absolutely empty
  22. else max += count / 2;
  23. }
  24. return max >= n;
  25. }
  26. }

在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,250人围观)

还没有评论,来说两句吧...

相关阅读

    相关 605. 种花问题

    605. 种花问题 假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。 给你一个整数数组 flow

    相关 605. 种花问题

    贪心思想:  保证每次操作都是局部最优\---->从而使得全局最优   > 假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会

    相关 LeetCode605. 种花问题

    假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。 给定一个花坛(表示为一个数组包含0和1,其中0表