#P1808. 公会战

公会战

Description

如今,游戏越来越注重社交性,而许多游戏中都有公会战的概念,即通过全公会玩家的努力完成boss讨伐,从而获取一系列诱人的奖励。

Djeeta是手游《公主焊接》的忠实玩家,在这个游戏中,全公会的玩家需要根据自己的输出能力和boss的血量来决定出手顺序,从而避免伤害浪费,对boss造成更高的伤害。现规定公会战的规则如下(和现实中并不完全一致):

1.公会中有n名玩家,第 i 名玩家可以造成的伤害为 a[i] ,每个玩家只能出手一次 。

2.在讨伐最终boss之前,必须先击败前置的小怪,共有 m 个小怪,第 i 个小怪的血量为 d[i] , 每个小怪只能由一位玩家出手,只有当出手的玩家可以造成的伤害大于小怪的血量时,才可以顺利击败这个小怪。

3.只有当所有的前置小怪被击败时,公会其他没有出手的玩家才可以对最终boss造成伤害。

为了能够对最终boss造成最大化的伤害,会长把排刀的任务交给了Djeeta,作为她的好朋友,你能帮帮她吗?

Input Format

输入的第一行为两个整数 m 和 n ,表示小怪的数量和公会内玩家的数量。

接下来 m 行,每行一个整数,表示小怪的血量。

接下来 n 行,每行一个整数,表示公会内玩家的可以造成的伤害。

Output Format

一个整数,表示可以对最终boss造成的最大伤害。

3 5 
1000 
2000 
1200 
2100 
2000 
1200 
1000 
1000​
2000​

Hint

对于100%的数据有 1 <= n , m <= 100000,0<=a[i],d[i]<=10000## Source

排序