UVA 11292 Dragon of Loowater
2014-06-05 18:47
495 查看
贪心算法,先把龙头和骑士的数据从小到大排序,每个龙头选择最划算的一个骑士去砍这个龙头,最后总的消耗就是最小的。
#include <stdio.h>
#include <algorithm>
int drangon[20001];
int knight[20001];
int cmp(const void *a, const void *b){
int *pa = (int*)a;
int *pb = (int*)b;
return *pa-*pb;
}
void func(int n, int m){
if(m < n){
printf("Loowater is doomed!\n");
return;
}
qsort(drangon+1, n, sizeof(int), cmp);
qsort(knight+1, m, sizeof(int), cmp);
int i, j, sum, count;
i = j =1; sum = 0; count = 0;
while(1){
if(i > n)
break;
for(; j<=m; j++)
if(knight[j] >= drangon[i])
break;
if(j > m)
break;
sum += knight[j];
j++;
i++;
count++;
}
if(count == n){
printf("%d\n", sum);
}
else{
printf("Loowater is doomed!\n");
}
}
int main(void){
int n, m, i;
//freopen("input.dat", "r", stdin);
while(scanf("%d %d", &n, &m) != EOF){
if(0==m && 0==n)
break;
for(i=1; i<=n; i++)
scanf("%d", drangon+i);
for(i=1; i<=m; i++)
scanf("%d", knight+i);
func(n, m);
}
return 0;
}
#include <stdio.h>
#include <algorithm>
int drangon[20001];
int knight[20001];
int cmp(const void *a, const void *b){
int *pa = (int*)a;
int *pb = (int*)b;
return *pa-*pb;
}
void func(int n, int m){
if(m < n){
printf("Loowater is doomed!\n");
return;
}
qsort(drangon+1, n, sizeof(int), cmp);
qsort(knight+1, m, sizeof(int), cmp);
int i, j, sum, count;
i = j =1; sum = 0; count = 0;
while(1){
if(i > n)
break;
for(; j<=m; j++)
if(knight[j] >= drangon[i])
break;
if(j > m)
break;
sum += knight[j];
j++;
i++;
count++;
}
if(count == n){
printf("%d\n", sum);
}
else{
printf("Loowater is doomed!\n");
}
}
int main(void){
int n, m, i;
//freopen("input.dat", "r", stdin);
while(scanf("%d %d", &n, &m) != EOF){
if(0==m && 0==n)
break;
for(i=1; i<=n; i++)
scanf("%d", drangon+i);
for(i=1; i<=m; i++)
scanf("%d", knight+i);
func(n, m);
}
return 0;
}
相关文章推荐
- 勇者斗恶龙(Dragon of Loowater ,UVa 11292)
- UVa 11292 - Dragon of Loowater(排序贪心)
- uva 11292 The Dragon of Loowater(贪心)
- UVA-11292 - Dragon of Loowater(排序)
- uva11292 - Dragon of Loowater
- UVA11292 The Dragon of Loowater
- UVA 11292 Dragon of Loowater(贪心)
- UVA 11292 - Dragon of Loowater
- Uva 11292 The Dragon of Loowater
- UVa11292 - Dragon of Loowater
- UVa 11292 Dragon of Loowater(排序+贪心)
- UVA 11292(HDU 1902)The Dragon of Loowater
- uva --11292 --Dragon of Loowater
- UVa 11292 Dragon of Loowater——思路题
- Uva 11292 Dragon of Loowater
- UVA - 11292 Dragon of Loowater
- uva 11292 - Dragon of Loowater
- UVA - 11292 Dragon of Loowater (贪心)
- UVA 11292 Dragon of Loowater
- Uva11292--------------(The Dragon of Loowater)勇者斗恶龙 (排序后贪心)