Submission #1293241

#TimeUsernameProblemLanguageResultExecution timeMemory
12932411otaGym Badges (NOI22_gymbadges)C++20
9 / 100
112 ms8332 KiB
#include <bits/stdc++.h>
using namespace std;

#define endl "\n"
#define int long long
#define pii pair<int, int>
#define ff first
#define ss second
#define entire(x) (x).begin(), (x).end()

const int inf = 1e16;

int32_t main(){
    ios::sync_with_stdio(false); cin.tie(nullptr);

    int n; cin >> n;
    vector<pii> a(n);
    for (int i = 0; i < n; i++) cin >> a[i].ss;
    for (int i = 0; i < n; i++) cin >> a[i].ff;
    sort(entire(a));


    // vector<int> dp(n+1, inf); dp[0] = 0;

    // for (auto [lim, gain] : a){
    //     vector<int> dpnew = dp;
    //     for (int i = 0; i < n; i++){
    //         if (dp[i] > lim) continue;
    //         dpnew[i+1] = min(dpnew[i+1], dp[i] + gain);
    //     }
    //     dp = dpnew;
    // }

    // int ans = 0;
    // for (int i = 1; i <= n; i++){
    //     if (dp[i] >= inf) break;
    //     ans++;
    // }

    // cout << ans << endl;

    int cur = 0, ans = 0;
    for (auto [lim, gain] : a){
        if (lim < cur) continue;
        else cur += gain, ans++;
    }

    cout << ans << endl;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...