163442025-04-28 18:06:08algoproJobstown-i milliomoscpp17Hibás válasz 16/1002ms556 KiB
// UUID: 7fb7acef-9a42-452c-b4ba-0e769d8be30e
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

int main() {
    int n, m;
    cin >> n >> m;
    vector<pair<int, ll>> job(n);
    for (int i = 0; i < n; i++) cin >> job[i].first;
    for (int i = 0; i < n; i++) cin >> job[i].second;
    sort(job.rbegin(), job.rend());
    vector<pair<ll, int>> best(n);
    for (int i = 0; i < n; i++) {
        pair<ll, int> g = {0, 0};
        for (int j = 0; j < i; j++) {
            ll mon = best[j].second / job[i].first * job[i].second;
            pair<ll, int> o = {best[j].first + mon, best[j].second % job[i].first};
            g = max(g, o);
        }
        best[i] = max(g, {m / job[i].first * job[i].second, m % job[i].first});
    }
    cout << best[n - 1].first;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Elfogadva1ms316 KiB
subtask20/25
3Elfogadva1ms316 KiB
4Elfogadva1ms316 KiB
5Hibás válasz2ms316 KiB
6Hibás válasz2ms316 KiB
7Hibás válasz2ms408 KiB
8Hibás válasz2ms328 KiB
9Elfogadva2ms316 KiB
10Elfogadva2ms316 KiB
11Elfogadva2ms316 KiB
12Elfogadva2ms316 KiB
13Elfogadva2ms316 KiB
14Elfogadva1ms316 KiB
subtask316/16
15Elfogadva2ms512 KiB
16Elfogadva2ms316 KiB
17Elfogadva2ms316 KiB
18Elfogadva1ms508 KiB
19Elfogadva2ms556 KiB
20Elfogadva2ms508 KiB
21Elfogadva2ms316 KiB
subtask40/59
22Elfogadva1ms316 KiB
23Elfogadva1ms316 KiB
24Hibás válasz2ms316 KiB
25Hibás válasz2ms316 KiB
26Hibás válasz2ms420 KiB
27Elfogadva2ms316 KiB
28Elfogadva2ms316 KiB
29Elfogadva2ms388 KiB
30Elfogadva1ms316 KiB
31Elfogadva2ms316 KiB
32Hibás válasz2ms408 KiB
33Hibás válasz2ms424 KiB