[算法][数组][leetcode]2391. 收集垃圾的最少总时间

在这里插入图片描述

题目地址:

https://leetcode.cn/problems/minimum-amount-of-time-to-collect-garbage/description/



题解:

  class Solution {
    public int garbageCollection(String[] garbage, int[] travel) {
        int ans = 0;
       //先计算收所有的垃圾需要多少时间
       for(String s :garbage){
        ans+=s.length();
       }

       //假设每辆垃圾车都要跑完所有的房子则他们需要消耗的时间为
       for(int x : travel){
        ans+=x*3;
       }

       //去掉多加的时间,我们可以从后往前看 
       //比如 ["G","P","GP","GG"] 如果最后一个房子没有M和P则车子不需要到这里 再往前推也是一样
       //但是不管前面有没有 如果最后一个有 比如["G","P","GP","M"] 则车需要把所有房子都跑一遍
       //["G","P","M","M"]这种情况则收纸需要跑第一、二家 收玻璃的只需要跑第一家 收金属的需要跑所有家
        char [] arr = new char[]{'P','G','M'};
       for(char c : arr){
            for(int i=garbage.length-1;i>0&&garbage[i].indexOf(c)<0;i--){
                ans -=travel[i-1];
            }
       }

       return ans;
    }
}

在这里插入图片描述

相关推荐

  1. LeetCode 2391. 收集垃圾最少时间

    2024-05-16 00:00:09       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-16 00:00:09       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-16 00:00:09       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-16 00:00:09       87 阅读
  4. Python语言-面向对象

    2024-05-16 00:00:09       96 阅读

热门阅读

  1. c语言基础

    2024-05-16 00:00:09       29 阅读
  2. ICSE docker related research

    2024-05-16 00:00:09       39 阅读
  3. 计算年龄案例

    2024-05-16 00:00:09       31 阅读
  4. 网站开发之前端和后端开发的区别和联系

    2024-05-16 00:00:09       41 阅读
  5. [数组专题]力扣88

    2024-05-16 00:00:09       28 阅读
  6. 用于接收参数的几个注解

    2024-05-16 00:00:09       32 阅读
  7. Go 处理错误&异常

    2024-05-16 00:00:09       38 阅读
  8. LeetCode算法题:两数之和

    2024-05-16 00:00:09       44 阅读
  9. Unity学习笔记---软件介绍

    2024-05-16 00:00:09       32 阅读