勇者斗恶龙--C++

你的国王中有一条n个头的龙,你希望雇佣一些骑士把它杀死。村里有m个骑士,且只能雇佣一次。

一个能力值为x的骑士,只能砍掉一个直径不超过x的头,

且需要支付的金币为x,如何雇佣这些骑士支付金币最少。

例子:

input:2  3

5

4

7

8

4

output:11

input:2 1

5

5

10

output:Loowater is doomed!

方法

—————————————————————————————————————————

#include

#include

using namespace std;

int main(){

int a[20005],b[20005];

int n,m,sum=0;

int p=0;

int i,j;

cin>>n>>m;

if(n==0||m==0){

  cout<<"loowater is doomed!";

}

else{

for(i=0;i

cin>>a[i];

for(i=0;i

cin>>b[i];

sort(a,a+n);

sort(b,b+m);

for(j=0;j

if(b[j]>=a[p]){

sum+=b[p];

if(++p==n)

break;

}

}

}

if(p

cout<<"loowater is doomed!";

}

else{

cout<

}

return 0;

}

你可能感兴趣的:(勇者斗恶龙--C++)