种花问题算法

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

给你一个整数数组 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;
    }
}
相关推荐
折哥的程序人生 · 物流技术专研6 小时前
《Java 100 天进阶之路》第53篇:volatile与JMM(2026版)
java·volatile·内存屏障·可见性·java内存模型·jmm·java100天进阶
米饭不加菜6 小时前
使用万用表判断三极管(BJT)好坏
java·开发语言
珠海西格电力7 小时前
零碳园区数据应用的具体场景有哪些?
大数据·人工智能·算法·架构·能源
geovindu7 小时前
CSharp: Dijkstra Algorithms
开发语言·后端·算法·c#
Maynor9967 小时前
AI Coding 零基础实战教程|第五部分:完整项目案例实操
java·前端·人工智能·claude code·ai coding
生戎马7 小时前
Tomcat Container容器之Engine:StandardEngine _
java·tomcat
学逆向的7 小时前
汇编——位运算
开发语言·汇编·算法·网络安全
zhangjw347 小时前
第29篇:Java伪共享与对象分配:并发性能优化的关键
java·开发语言·性能优化
可编程芯片开发8 小时前
基于simulink的PEM燃料电池控制系统建模与仿真,对比PID,积分分离以及滑模控制器
算法
宠友信息8 小时前
内容社区源码多端数据协议与 Spring Boot 状态流转实现思路
java·spring boot·websocket·uni-app