《万红丛中一点绿》
查看原帖
《万红丛中一点绿》
1251905
cao_20115楼主2024/5/1 19:57
#include <bits/stdc++.h>
using namespace std;
int n, ans, fre[10086];
bool c;
struct game{
    int r, t;
}a[10086];
bool cmp(game a, game b) {
    if (a.r >= b.r) return true;
    else return false;
}
int main(){
    scanf("%d", &n);
    for (int i = 1; i <= n; ++i) {
        scanf("%d", &a[i].t);
    }
    for (int i = 1; i <= n; ++i) {
        scanf("%d", &a[i].r);
    }
    sort(a + 1, a + n + 1, cmp);
    for (int i = 1; i <= n; ++i) {
        c = false;
        for (int j = a[i].t; j >= 1; --j) {
            if (fre[j] == 0) {
                fre[j]== 1;
                c = true;
                break;
            }
        }
        if (c) ans += a[i].r;
    }
    printf("%d", ans);
    return 0;
}

#3AC,#1~#2、#4~#10WA

2024/5/1 19:57
加载中...