在遥远的未来,人类已经进入了广阔的星际时代。一支名为“远征号”的星际舰队正在未知的宇宙深处执行探索任务。舰队由多艘补给舰和作战舰组成。补给舰负责从资源星开采并运送能量晶体,而作战舰则需要消耗这些晶体来维持护盾和武器系统。 每天,都会有一批补給舰(记作集合 )满载能量晶体返回母舰基地,它们需要排队进入唯一的能量接口进行卸货。同时,多艘作战舰(记作集合 )也在排队等待能量补充。补给总指挥官,一位久经沙场的将军,制定了一套高效的能量分配规则,以确保舰队的战斗力。 假设当前排在补给队列第一位的补给舰运来的能量晶体数量为 。作战舰的需求队列中,排在第 位的作战舰记为 ,其能量需求为 。 将军制定的分配规则如下: 1. **精准匹配**:如果当前补给舰的能量 正好等于队首作战舰 的需求 (即 ),则该补给舰的能量将完全转移给 。完成补给后,这艘补给舰和作战舰 均离开各自的队列。 2. **超量分配**:如果当前补给舰的能量 大于队首作战舰 的需求 (即 d_1" ),则启动连续补给模式。系统会寻找一个最大的整数 ,使得队列前 艘作战舰的总需求满足: 并且 K" 此时,该补给舰的全部能量 将被分配给这 艘作战舰()。这些作战舰完成补给后离开队列,同时该补给舰也离开队列。下一轮分配将由下一艘补给舰和新的队首作战舰 开始。 3. **需求不足**:如果当前补给舰的能量 小于队首作战舰 的需求 (即 ),则 无法在此轮得到满足。 将放弃本次补给机会,移动到作战舰队列的末尾重新排队。该补给舰则继续等待,尝试为下一艘作战舰(原队列中的 )进行补给。 在所有补给舰的能量晶体分配完毕,或者所有作战舰都完成补给后,流程结束。请计算,最终有多少艘作战舰未能成功获得能量补充?
输入描述:
输入包含两行,均为一系列由空格分隔的正整数。- 第一行代表补给舰队列 中各舰船的能量晶体数量。数组中的第 个元素 代表第 艘补给舰的载量。我们保证 且 。- 第二行代表作战舰队列 中各舰船的能量需求。数组中的第 个元素 代表第 艘作战舰的需求量。我们保证 且 。若输入格式不合法(例如,行为空或数值越界),程序应返回 `-1`。


输出描述:
输出一个整数,表示在分配流程结束后,未能获得能量补充的作战舰的数量。
示例1

输入

1
5 6

输出

2

说明

补给舰的能量 K=1 无法满足任何一艘作战舰的需求(需求分别为 56)。
因此,两艘作战舰都未能获得补给。
示例2

输入

3 5 7 3 4
2 4 8 5 2

输出

1

说明

1.  第一艘补给舰,能量 K=3。队首作战舰需求 d_1=23 > 2,启动超量分配。
- \sum_{j=1}^{1} d_j = 2 \le 3
- \sum_{j=1}^{2} d_j = 2+4 = 6 > 3
- 因此,能量分配给第一艘作战舰。补给舰队列变为 `5 7 3 4`,作战舰队列变为 `4 8 5 2`。

2. 第二艘补给舰,能量 K=5。队首作战舰需求 d_1=45 > 4,启动超量分配。
- \sum_{j=1}^{1} d_j = 4 \le 5
- \sum_{j=1}^{2} d_j = 4+8 = 12 > 5
- 能量分配给第一艘作战舰。补给舰队列变为 `7 3 4`,作战舰队列变为 `8 5 2`。

3. 第三艘补给舰,能量 K=7。队首作战舰需求 d_1=87 < 8,需求不足。
- 需求为 8 的作战舰移动到队尾。作战舰队列变为 `5 2 8`。补给舰 `7` 继续尝试。

4. 补给舰 `7` 继续。队首作战舰需求变为 d_1=57 > 5,启动超量分配。
- \sum_{j=1}^{2} d_j = 5+2 = 7 \le 7
- \sum_{j=1}^{3} d_j = 5+2+8 = 15 > 7
- 能量分配给前两艘作战舰。补给舰队列变为 `3 4`,作战舰队列变为 `8`。

5. 此后,剩余的补给舰能量(34)均无法满足需求为 8 的作战舰。
最终,只有一艘需求为 8 的作战舰未能获得补给。
示例3

输入

3 5 7 9 3 2 1
1 2 4 5 2

输出

0

说明

按照分配规则,所有作战舰最终都能获得所需的能量。

备注:
本题由牛友@Charles 整理上传
加载中...