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

LeetCode第1695题 - 删除子数组的最大得分

题目

解答

class Solution {public int maximumUniqueSubarray(int[] nums) {int left = 0, right = 0;int result = Integer.MIN_VALUE;int sum = 0;Set<Integer> set = new HashSet<>();while (right < nums.length) {int v1 = nums[right];if (set.add(v1)) {++right;sum += v1;continue;}result = Math.max(result, sum);if (left < nums.length) {set.remove(nums[left]);sum -= nums[left];++left;}}result = Math.max(result, sum);return result;}
}

测试用例

	@Testpublic void test001() {int result = s.maximumUniqueSubarray(new int[]{4, 2, 4, 5, 6});int expected = 17;Assert.assertTrue(String.valueOf(result), result == expected);}@Testpublic void test002() {int result = s.maximumUniqueSubarray(new int[]{5, 2, 1, 2, 5, 2, 1, 2, 5});int expected = 8;Assert.assertTrue(String.valueOf(result), result == expected);}@Testpublic void test003() {int result = s.maximumUniqueSubarray(new int[]{2, 4, 5, 6});int expected = 17;Assert.assertTrue(String.valueOf(result), result == expected);}@Testpublic void test004() {int result = s.maximumUniqueSubarray(new int[]{4, 2, 5, 6});int expected = 17;Assert.assertTrue(String.valueOf(result), result == expected);}@Testpublic void test005() {int result = s.maximumUniqueSubarray(new int[]{4});int expected = 4;Assert.assertTrue(String.valueOf(result), result == expected);}@Testpublic void test006() {int result = s.maximumUniqueSubarray(new int[]{4, 5});int expected = 9;Assert.assertTrue(String.valueOf(result), result == expected);}@Testpublic void test007() {int result = s.maximumUniqueSubarray(new int[]{4, 4});int expected = 4;Assert.assertTrue(String.valueOf(result), result == expected);}

总结
使用滑动窗口的套路来解题。

http://www.dtcms.com/a/344917.html

相关文章:

  • 数字经济浪潮下的刑事法律风险与辩护新路径
  • k8s 简介及部署方法以及各方面应用
  • STM32F1 GPIO介绍及应用
  • Vue2.x核心技术与实战(三)
  • 掌握DRF的serializer_class:高效API开发
  • [激光原理与应用-318]:光学设计 - Solidworks - 草图中常见的操作
  • PCIe 5.0 SSD的发热量到底有多大?如何避免?
  • ubuntu - 终端工具 KConsole安装
  • DL00433-基于深度学习的无人机红外成像系统可视化含数据集
  • 【数据结构】选择排序:直接选择与堆排序详解
  • 【小白笔记】 MNN 移动端大模型部署
  • Java试题-选择题(14)
  • 新能源知识库(83)新能源行业的标准制定机构介绍
  • 期权买沽是什么意思?
  • python3GUI--Joy音乐播放器 在线播放器 播放器 By:PyQt5(附下载地址)
  • DAY01:【DL 第一弹】深度学习的概述
  • 什么是哈希值(hash value)???
  • FFmpeg03:多媒体文件处理基础
  • ffmpeg 中 crc32 源码分析及调试
  • vagrant怎么在宿主机操作虚拟机里面的系统管理和软件安装
  • xilinx的oddr原语是否可以直接使用verilog实现?
  • ingress和service区别
  • 20250822解决荣品RD-RK3588-MID核心板出现插USB开机-长按RESET开机的问题
  • 基于LangChain + Milvus 实现RAG
  • 升级 Docker Compose 到最新版本:从安装到验证全指南
  • SOLIDWORKS 2025智能工具优化设计流程
  • 数据结构: 2-3 树的删除操作 (Deletion)
  • Maven的概念与Maven项目的创建
  • 线程异步操作
  • LoRA内部原理代码解析(52)