种花问题算法

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

给你一个整数数组 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;
    }
}
相关推荐
yuanyuan2o24 小时前
GDB 调试指南
c语言·c++·算法
流年如夢4 小时前
算法效率:复杂度原理解析
c语言·数据结构·算法
cpp_25016 小时前
P1024 [NOIP 2001 提高组] 一元三次方程求解
数据结构·c++·算法·题解·二分答案·洛谷·csp
半瓶榴莲奶^_^7 小时前
jvm java虚拟机
java·jvm
田梓燊12 小时前
力扣:23.合并 K 个升序链表
算法·leetcode·链表
invicinble12 小时前
这里对java的知识体系做一个全域的介绍
java·开发语言·python
wbs_scy13 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·开发语言
re林檎13 小时前
算法札记——4.27
算法
ss27313 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
AI人工智能+电脑小能手13 小时前
【大白话说Java面试题】【Java基础篇】第15题:JDK1.7中HashMap扩容为什么会发生死循环?如何解决
java·开发语言·数据结构·后端·面试·哈希算法