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

Leetcode 3695. Maximize Alternating Sum Using Swaps

  • Leetcode 3695. Maximize Alternating Sum Using Swaps
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3695. Maximize Alternating Sum Using Swaps

1. 解题思路

这一题算是一个比较基础的DSU的题目,就是把所有swap的位置聚合,然后聚合的每一个簇当中的任意元素均可两两互换,最后我们只要考察每一个簇当中的元素顺序排列,大的元素全排到偶数位置上,小的元素全放到奇数位置上,最后看结果的大小即可。

而关于DSU的相关内容,网上内容很多了,我自己也有一篇水文《经典算法:并查集(DSU)结构简介》作为备忘,因此这里就不过多展开了,有兴趣的读者自己查查就行了。

2. 代码实现

给出python代码实现如下:

class DSU:def __init__(self, N):self.root = [i for i in range(N)]def find(self, k):if self.root[k] != k:self.root[k] = self.find(self.root[k])return self.root[k]def union(self, a, b):x = self.find(a)y = self.find(b)if x != y:self.root[y] = xreturnclass Solution:def maxAlternatingSum(self, nums: List[int], swaps: List[List[int]]) -> int:n = len(nums)dsu = DSU(n)for i, j in swaps:dsu.union(i, j)groups = defaultdict(list)for i in range(n):key = dsu.find(i)groups[key].append((nums[i], i))ans = 0for elems in groups.values():vals, even = [], 0for num, idx in elems:vals.append(num)if idx % 2 == 0:even += 1m = len(vals)s = sum(vals)if m == even:ans += selif even == 0:ans -= selse:vals = sorted(vals, reverse=True)d = sum(vals[even:])ans += s - d*2return ans

提交代码评测得到:耗时439ms,占用内存64.76MB。

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

相关文章:

  • 模型瘦身四剑客:剪枝、量化、低秩分解、知识蒸馏详解
  • php 校园网站设计如何做网站流程图
  • 如何高效下载 YouTube 视频?实用工具推荐
  • 【洛谷】6 道题吃透堆的应用:模板堆、第 k 小、最小函数值等全攻略
  • MySQL库的操作(ubuntu)
  • 利用AI赋能抑郁症管理:创业项目与技术方案
  • 中国网站建设市场分析报告上海网站设计合理柚v米科技
  • 【IMX6ULL项目复现】sg90电机-pwm
  • 2025软件供应链安全实战:从漏洞修补到风险预测的转型指南
  • iOS26 打开开发者模式
  • 注销主体备案与网站备案沧州最火网站
  • AI智能体在研究分析中的仿真应用:AI驱动的复杂系统建模与“理论压缩”
  • 表格识别技术:突破传统OCR的局限,通过定位-解析-重建三步策略攻克无边框、合并单元格等视觉难题
  • 免费企业模板网站制作网页设计公司
  • 开放定址法的平均查找长度计算
  • MEVless,MEV解决之道
  • 网站 自适应文字大小怎么做响应式网站建设公司
  • 手写MyBatis第89弹:动态SQL解析与执行时机深度剖析
  • 解读172页“十五五”企业战略规划指导手册【附全文阅读】
  • 网站开发个人工作室网站推送怎么做的
  • 机器学习:逻辑回归
  • 机器学习——SVM支持向量机详解
  • app网站开发wordpress 自定义字段 调用
  • 互动网站建设什么意思wordpress 公众号插件
  • CUDA 13.0 中 CCCL 2.x 到 CCCL 3.0 迁移介绍
  • 临沂企业网站建设网站建设 技术方案
  • 《计算机视觉度量:从特征描述到深度学习》-- 基于MAE预训练模型DinoV3的图像特征分析
  • LabVIEW继电保护检测
  • 网站开发网公司营业执照查询
  • dedecms视频网站开发wordpress弃用react