203832026-01-06 17:22:28CzDaniBefektetéscpp17Elfogadva 40/4024ms560 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long
#define pii pair<int, int>
#define fi first
#define se second

signed main() {
	int n, k;
    cin >> n >> k;
    vector<pii> v(n);
    vector<int> va(n+1), vb(n+1);
    for (int i = 1; i <= n; i++) {
        cin >> va[i] >> vb[i] >> v[i-1].fi;
        v[i-1].se=i;
    }
    sort(v.begin(), v.end());
    int maxi = 0;
    vector<int> dp(k+1);
    for (auto [c, i] : v) {
        int a = va[i], b = vb[i];
        for (int j = k; j >= a; j--) {
            dp[j]=max(dp[j],dp[j-a]+b);
            if (j<=k-c)maxi=max(maxi,dp[j]);
        }
    }
    cout<<maxi;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/01ms316 KiB
2Elfogadva0/03ms500 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva1/11ms364 KiB
6Elfogadva2/21ms400 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva2/21ms412 KiB
9Elfogadva2/21ms324 KiB
10Elfogadva2/21ms316 KiB
11Elfogadva3/38ms460 KiB
12Elfogadva3/37ms472 KiB
13Elfogadva3/38ms316 KiB
14Elfogadva3/38ms500 KiB
15Elfogadva3/38ms472 KiB
16Elfogadva4/47ms316 KiB
17Elfogadva1/124ms552 KiB
18Elfogadva1/124ms560 KiB
19Elfogadva1/124ms552 KiB
20Elfogadva1/124ms556 KiB
21Elfogadva1/124ms552 KiB
22Elfogadva1/124ms548 KiB