当前位置: 首页 > news >正文

力扣416周赛

举报垃圾信息

题目

3295. 举报垃圾信息 - 力扣(LeetCode)

思路

直接模拟就好了,这题居然是中等难度

代码

public boolean reportSpam(String[] message, String[] bannedWords) {Map<String,Integer> map = new HashMap<>();for(String msg:bannedWords){map.put(msg,0);}int sum = 0;for(String msg:message){if(map.containsKey(msg)){sum++;}if(sum==2){return true;}}return false;}

移山所需要的最少秒数

题目

3296. 移山所需的最少秒数 - 力扣(LeetCode)

思路

  • 二分查找法:为了找到最少时间,可以考虑使用二分查找的方法。我们在 0 到 totalTime(所有工人将山的高度降为0所需的最大时间)之间进行二分查找。
  • 判断是否可行:给定一个 mid 时间,我们判断是否可以在 mid 时间内将山的高度降为0。如果可以,则说明可能有更少的时间,我们可以尝试更短的时间(减少 right);否则,说明时间不够,需要增加时间(增加 left)。
  • 如何判断是否可行:我们需要检查所有工人能在 mid 时间内最多能降低的高度总和。如果所有工人能在 mid 时间内降低的总高度大于或等于 mountainHeight,说明时间是可行的。

代码

public class Solution {public long minNumberOfSeconds(int mountainHeight, int[] workerTimes) {// 二分查找的左边界是0,右边界是所有工人以最快的速度降低山的高度总时间long left = 0, right = (long) workerTimes[0] * mountainHeight * (mountainHeight + 1) / 2;while (left < right) {long mid = left + (right - left) / 2;if (canReduceToZero(mountainHeight, workerTimes, mid)) {right = mid;} else {left = mid + 1;}}return left;}// 判断是否可以在给定的时间内将山的高度降低到 0private boolean canReduceToZero(int mountainHeight, int[] workerTimes, long timeLimit) {long totalHeightReduced = 0;for (int time : workerTimes) {// 二分查找可以在 timeLimit 内降低的最大高度long left = 0, right = mountainHeight;while (left < right) {long mid = left + (right - left + 1) / 2;if (time * mid * (mid + 1) / 2 <= timeLimit) {left = mid;} else {right = mid - 1;}}totalHeightReduced += left;if (totalHeightReduced >= mountainHeight) {return true;}}return totalHeightReduced >= mountainHeight;}}

总结

剩下两题没做出来,很难评,出这么难,不要命了

http://www.lryc.cn/news/445450.html

相关文章:

  • vue 页面常用图表框架
  • spring 注解 - @PostConstruct - 用于初始化工作
  • 多机器学习模型学习
  • 【网页设计】前言
  • STM32巡回研讨会总结(2024)
  • 54 螺旋矩阵
  • 基于STM32与OpenCV的物料搬运机械臂设计流程
  • [万字长文]stable diffusion代码阅读笔记
  • watchEffect工作原理
  • 斐波那契数列
  • TCP并发服务器的实现
  • 前端大屏自适应方案
  • 16.3 k8s容器cpu内存告警指标与资源request和limit
  • 【计算机网络 - 基础问题】每日 3 题(二十)
  • 铰链损失函数
  • 项目实战bug修复
  • Git常用指令整理【新手入门级】【by慕羽】
  • 记某学校小程序漏洞挖掘
  • 腾讯百度阿里华为常见算法面试题TOP100(3):链表、栈、特殊技巧
  • Apache CVE-2021-41773 漏洞复现
  • vue-入门速通
  • 【AI大模型】通义大模型API接口实现
  • CVPR最牛图像评价算法!
  • Spring源码-从源码层面讲解传播特性
  • Rust调用tree-sitter解析C语言
  • 奇瑞汽车—经纬恒润 供应链技术共创交流日 成功举办
  • vue3 TagInput 实现
  • mysql中的json查询
  • Etcd权限认证管理
  • 图文组合商标部分驳回后优化后初审通过!