UVA - 11292消灭恶龙——排序+贪心

Dragon of Loowater

#include<stdio.h>
#include<iostream>
#include<cmath>
#include<math.h>
#include<string>
#include<string.h>
#include<algorithm>
#include<stack>
#include<queue>
#include<vector>
#include<map>
#define ms0(a) memset(a,0,sizeof(a))
#define ll long long
#define ull unsigned long long
#define INF 0x3f3f3f3f
using namespace std;

int n,m,d[20005],cost[20005],pd,pc;
int main(){
    while (scanf("%d%d",&n,&m) &&(n || m)) {
        
        ms0(d);ms0(cost);
        for(int i=1;i<=n;i++)
            scanf("%d",&d[i]);
        for(int i=1;i<=m;i++)
            scanf("%d",&cost[i]);
        sort(d+1, d+n+1);
        sort(cost+1,cost+m+1);
        ll ans=0;pd=1;
        for(pc=1;pc<=m;pc++)
        {
            if(pd==n+1) break;
            if(cost[pc]<d[pd]) continue;
            ans+=cost[pc];
            pd++;
        }
        if(pd==n+1)
            printf("%lld\n",ans);
        else
            printf("Loowater is doomed!\n");
        
    }
    return 0;
}

发布了78 篇原创文章 · 获赞 0 · 访问量 3412

猜你喜欢

转载自blog.csdn.net/qq_44846324/article/details/104874600