【C语言刷力扣】2079.给植物浇水

题目:

解题思路:

面对每一株植物有两种情况水够 or 水不够:

  • 水够: result加1即向前走一步

  • 水不够: 走回河边再走回来并向前走一步,走到下一植物 result += 2 * i + 1

    int wateringPlants(int* plants, int plantsSize, int capacity) {
    int result = 0;
    int water = capacity;
    for (int i = 0; i < plantsSize; i++) {
    water -= plants[i];
    if (water >= 0) {
    result++;
    }
    else {
    result += 2 * i + 1;
    water = capacity - plants[i];
    }
    }
    return result;
    }

相关推荐
Trouvaille ~9 分钟前
【Linux】库制作与原理(三):动态链接与加载机制
linux·c语言·汇编·got·动静态库·动态链接·plt
一个不知名程序员www10 分钟前
算法学习入门---C/C++输入输出
c语言·c++
APIshop16 分钟前
高性能采集方案:淘宝商品 API 的并发调用与数据实时处理
linux·网络·算法
rannn_11125 分钟前
【SQL题解】力扣高频 SQL 50题|DAY5
数据库·后端·sql·leetcode·题解
松涛和鸣26 分钟前
DAY38 TCP Network Programming
linux·网络·数据库·网络协议·tcp/ip·算法
ss27330 分钟前
ThreadPoolExecutor七大核心参数:从源码看线程池的设计
java·数据库·算法
qq_4335545440 分钟前
C++ 状压DP(01矩阵约束问题)
c++·算法·矩阵
虫小宝41 分钟前
返利app排行榜系统设计:基于大数据计算的实时排名算法实现
大数据·算法
C雨后彩虹1 小时前
字符串拼接
java·数据结构·算法·华为·面试
LYFlied1 小时前
【每日算法】LeetCode 279. 完全平方数(动态规划)
前端·算法·leetcode·面试·动态规划