#include <iostream>
#include <stdio.h>
#include <algorithm>
#define MAXN 20020
int head[MAXN];//每个头的半径
int ability[MAXN];//每个人的能力
using namespace std;
int main(void)
{
int n, m;
while (scanf("%d%d", &n, &m) != EOF && n + m)
{
int sum = 0;
for (int i = 0; i < n; i++)
scanf("%d", &head[i]);
for (int i = 0; i < m; i++)
scanf("%d", &ability[i]);
sort(head, head + n);
sort(ability, ability + m);//从小到大对头的半径和勇士的能力进行排序
int head_count = 0;//已经砍掉头的数目
for (int i = 0; i < m; i++)
{
if (ability[i] >= head[head_count])//如果可以把头砍掉就砍
{
head_count++;//砍掉一个就++
sum += ability[i];//并且雇佣金额也要增加
}
if (head_count == n)
break;//头砍完以后就立刻出来吧!!!
}
if (head_count == n)//如果头被砍完了
printf("%d\n", sum);
else
printf("Loowater is doomed!\n");
}
return 0;
}
UVA - 11292 - Dragon of Loowater
最新推荐文章于 2024-09-09 23:52:42 发布