额,到家了,紫书没带,先开始看指南吧。
指南例题第一道,简单贪心。
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#define MAXN 20010
using namespace std;
int ants[MAXN][5];
int main() {
#ifndef ONLINE_JUDGE
freopen("in.txt", "r", stdin);
#endif // ONLINE_JUDGE
int n, m;
int A[MAXN], B[MAXN];
while(scanf("%d%d", &n, &m)&& n) {
memset(A, 0, sizeof(A));
memset(B, 0, sizeof(B));
for(int i = 0; i < n; i++) cin >> A[i];
for(int i = 0; i < m; i++) cin >> B[i];
int cur = 0, cost = 0;
sort(A, A + n);
sort(B, B + m);
for(int i = 0; i < m; i++) {
if(B[i] >= A[cur]) {
cost += B[i];
cur++;
}
if(cur == n) break;
}
cur == n ? cout << cost << endl : cout << "Loowater is doomed!" << endl;
}
return 0;
}