本题要求在两个任务队列中各选一个任务交换一次,使两边总耗时相等,并返回这一对下标。
设交换前两队列总和分别为 sumA、sumB,交换 A[i] 与 B[j] 后两边相等,可推导出:
A[i]−B[j]=2sumA−sumB已知存在两个任务队列 A、B,队列成员表示单个任务耗时;为了缩短整体运行时间,需要队列 A 和队列 B 中任务的总耗时一致。
初始时队列 A 和队列 B 的任务总耗时不同,要求只进行一次任务交换:从 A 中选择一个任务,从 B 中选择一个任务,两者互换;交换后要求两个队列的任务总耗时相等。
请你找出队列 A 和队列 B 中需要交换的任务位置 [i,j](数组下标,从 0 开始),规则说明:
整型数组 A,由队列 A 中的任务耗时构成的数组。
整型数组 B,由队列 B 中的任务耗时构成的数组。
数组 [i,j],其中 i 是 A 中参与交换任务的原始下标,j 是 B 中参与交换任务的原始下标,下标从 0 开始。
输入
[1,2,9],[1,2,3,4]
输出
[1,0]
说明
将队列 A 中的 2(下标为 1)和队列 B 中的 1(下标为 0)互换位置,两个任务队列中任务总耗时均为 11,因此返回互换位置下标 [1,0]。
输入
[1,15,9],[2,4,6,8,25]
输出
[1,4]
说明
将队列 A 中的 15(下标为 1)和队列 B 中的 25(下标为 4)互换位置,两个任务队列中任务总耗时均为 35,因此返回互换位置下标 [1,4]。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册