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

lc1029-两地调度

题目描述

  • 给定一个数组,长度为 2n,表示 2n 个人
  • 每个元素都是一个二元组,前一个数表示去 a 的路费,后一个数表示去 b 的路费
  • 需要让 n 个人去 a,另 n 个人去 b,求最小总花费

示例

输入:costs = [[10,20],[30,200],[400,50],[30,20]]
输出:110
解释:
第一个人去 a
第二个人去 a
第三个人去 b
第四个人去 b
总花费:10 + 30 + 50 + 20 = 110

题解

  • 思路:贪心
    • 让去 a 便宜的人去 a,让去 b 便宜的人去 b
    • 方法:对 costs 数组按二元组的差值排序。前 n 个人差值小,说明去 a 便宜;后 n 个人差值大,说明去 b 便宜
    • 怎么想到的?答:看题解~
func twoCitySchedCost(costs [][]int) int {sort.Slice(costs, func(i, j int) bool {return costs[i][0] - costs[i][1] < costs[j][0] - costs[j][1]})res := 0n := len(costs) / 2for i := 0; i < n; i ++ {res += costs[i][0]}for i := n; i < 2 * n; i ++ {res += costs[i][1]}return res
}
http://www.hskmm.com/?act=detail&tid=6586

相关文章:

  • pyAutoGUI 模块主要效果介绍-(2)键盘功能
  • (简记)时间复杂度分析 $\Omicron,\Theta,\Omega$ 的区别
  • Java的运算符
  • 2025年最强API安全解决方案:以智能风险监测重塑企业数据防护体系
  • HTML打包EXE工具中的WebView2内核更新指南
  • 第一天作业
  • EXE一机一码打包加密大师 - 打包加壳原理
  • 力扣62题 不同路径
  • 八皇后问题
  • 零知识证明中的专业漏洞解析
  • golang
  • 2025.9.16日软件工程学习日志
  • 2025ccpc南昌邀请赛感想+补题
  • img标签如何去除边框?
  • 25.9.16 java se大致了解后开始学习MySQL
  • C++ + OpenCV + Tesseract 实现英文数字验证码识别
  • Hadoop伪分布式hbase学习
  • Redis源码学习 -- 基本数据结构 -- Quicklist - -蓝蜗牛
  • 动态修改线程池参数
  • 力扣70题 爬楼梯
  • PHP(Laravel)+ ImageMagick + Tesseract 实现验证码识别
  • Windows下使用python + opencv读取含中文路径的图片 和 把图片数据保存到含中文路径下
  • 什么是网络+HTTP详解
  • 快速管理win系统上的用户
  • redis实现全局唯一id
  • 黑白世界
  • 表格识别技术:“唤醒”沉睡在纸质文档中的海量结构化数据
  • 【大三下】资料,仅内部学习使用
  • fastboot工具的常见命令
  • 《软件需求最佳实践》阅读笔记一