种花问题算法

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

给你一个整数数组 flowerbed 表示花坛,由若干 01 组成,其中 0 表示没种植花,1 表示种植了花。另有一个数 n,能否在不打破种植规则的情况下种入 n朵花?能则返回 true ,不能则返回 false

复制代码
输入:flowerbed = [1,0,0,0,1], n = 1
输出:true
java 复制代码
class Solution {
    public boolean canPlaceFlowers(int[] flowerbed, int n) {
        int[] a=new int[flowerbed.length+2];
        System.arraycopy(flowerbed,0,a,1,flowerbed.length);
        for(int i=1;i<=flowerbed.length;i++){
            if(a[i-1]==0&&a[i]==0&&a[i+1]==0){
                a[i]=1;
                n--;
            }
        }
        return n<=0;
    }
}
相关推荐
kisbad13 小时前
Day 036|OpenAI Agents SDK 快速开始:今天跑通第一个 Agent
java·前端·javascript
憧憬成为java架构高手的小白13 小时前
langchain4j框架学习
java
乐观勇敢坚强的老彭13 小时前
C++ 竞赛常用算法模板速查表
开发语言·c++·算法
0x5313 小时前
Java网络编程(四)
java·网络
高洁0113 小时前
工信部教考中心证书
人工智能·深度学习·算法·机器学习·知识图谱
ly768913 小时前
Java 设计模式详解:从原则到 23 种经典模式
java·开发语言·设计模式
我变成萤火虫13 小时前
河南萌新联赛2026第(三)场:郑州轻工业大学
数据结构·c++·算法·贪心算法·stl·深度优先·哈希算法
Dr.kangder14 小时前
嵌入式面试总结(十九)——内存泄露
单片机·算法·面试·职场和发展·架构·硬件架构
萧瑟余晖14 小时前
Java深入解析篇三十之Java日志框架
java·开发语言
白狐_79814 小时前
408数据结构第7章:B树①——基础概念与结构
数据结构·b树