- 两地调度
公司计划面试 2N 人。第 i 人飞往 A 市的费用为 costs[i][0],飞往 B 市的费用为 costs[i][1]。
返回将每个人都飞到某座城市的最低费用,要求每个城市都有 N 人抵达。
示例:
输入:[[10,20],[30,200],[400,50],[30,20]]
输出:110
解释:
第一个人去 A 市,费用为 10。
第二个人去 A 市,费用为 30。
第三个人去 B 市,费用为 50。
第四个人去 B 市,费用为 20。
最低总费用为 10 + 30 + 50 + 20 = 110,每个城市都有一半的人在面试。
提示:
1 <= costs.length <= 100
costs.length 为偶数
1 <= costs[i][0], costs[i][1] <= 1000
通过次数12,603提交次数19,943
有时候就在想,跟着力扣的标题来做题,明明也看到了是贪心的标签,但就是想不到该怎么贪心,实在是让人感到挫败啊
这道题因为是贪心标签嘛,思考了贪心后总发现,正常的按照A或B的大小来排序显然是很难能得到正确的解法的
于是想要用dp,因为毕竟只有两种状态,去A或者B,那么就dp的去最小值来进行。显然这样可以取到最大或者最小值,但问题是难以做到平分人数