题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2267
刘汝佳《算法竞赛入门经典训练指南》1.1例1
///2014.4.12
///uva11292
#include <iostream>
#include <cstdio>
#include <string>
#include <cmath>
#include <algorithm>
using namespace std;
#define maxn 20010
int n,m;
int A[maxn],B[maxn];
int main()
{
// freopen("in","r",stdin);
// freopen("out","w",stdout);
while( cin>>n>>m && n && m ){
for(int i=0 ; i<n ; i++)
cin>>A[i];
for(int i=0 ; i<m ; i++)
cin>>B[i];
sort(A,A+n);
sort(B,B+m);
int sum = 0;
int i,j;
i = j = 0;
for( ; i<n ; i++){
if( j==m ) break;
for( ; j<m ; j++){
if( B[j]>=A[i] ){
sum += B[j];
j++;
break;
}
}
}
if( i==n )
cout<<sum<<endl;
else
cout<<"Loowater is doomed!"<<endl;
}
return 0;
}