数据结构-贪心杂题

来源:互联网 发布:java获取resource路径 编辑:程序博客网 时间:2024/05/16 18:57
//HDU - 1789 #include<stdio.h>#include<algorithm>using namespace std;struct work{    int sco;    int time;    bool flag; }a[1005];bool comp(work a1, work a2) {    if(a1.time != a2.time)        return a1.time < a2.time;    return a1.sco > a2.sco;}int main() {    int T, n, i, j;    scanf("%d",&T);    while(T--) {        scanf("%d",&n);        for(i = 0; i < n; i++)            scanf("%d",&a[i].time);        for(i = 0; i < n; i++) {            scanf("%d",&a[i].sco);            a[i].flag = true;        }        sort(a, a+n, comp);        int sum = 0, k = 1;        for(i = 0; i < n; i++) {            if(a[i].time >= k) {                 k++;                continue;            }            int p = a[i].sco, pos = i;            for(j = 0; j < i; j++)                if(a[j].sco < p && a[j].flag) {                    p = a[j].sco;                    pos = j;                }            sum += p;            a[pos].flag = false;        }        printf("%d\n",sum);    }    return 0;}
0 0
原创粉丝点击