153072025-02-18 09:47:32tamasnagyDarabolás (50 pont)cpp17Hibás válasz 10/5075ms1168 KiB
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
void bevekt(int a[], int n) {
    for (int i = 0; i < n - 1; i++) {
        cin >> a[i];
    }
}
void rendezvekt(int a[], int n) {
    for (int i = 0; i < n - 2; i++) {
        for (int j = i+1; j < n-1; j++) {
            if (a[i] < a[j]) {
                swap(a[i], a[j]);
            }
        }
    }
}
void solve(int a[], int b[], int n, int m) {
    int i = 0, j = 0;
    int s = 0;
    while (i < n - 1 && j < m - 1) {
        if (a[i] * (j+1) > b[j] * (i+1)) {
            s += a[i] * (j+1);
            i++;
        }
        else {
            s += b[j] * (i+1);
            j++;
        }
    }
    while (i < n - 1) {
        s += a[i] * (j+1);
        i++;
    }
    while (j < m - 1) {
        s += b[j] * (i+1);
        j++; 
    }
    cout << s;
}
int a[100002];
int b[100002];
int main()
{
    int n, m;
    cin >> n >> m;
    bevekt(a, n);
    bevekt(b, m);
    sort(a,a+n-1,greater<int>());
    sort(b,b+m-1,greater<int>());
    solve(a, b, n, m);
}


RészfeladatÖsszpontTesztVerdiktIdőMemória
base10/50
1Elfogadva0/01ms316 KiB
2Hibás válasz0/041ms816 KiB
3Elfogadva1/11ms508 KiB
4Elfogadva1/11ms316 KiB
5Elfogadva1/11ms316 KiB
6Elfogadva1/11ms316 KiB
7Elfogadva1/11ms316 KiB
8Elfogadva1/11ms316 KiB
9Elfogadva1/11ms316 KiB
10Elfogadva1/11ms316 KiB
11Elfogadva1/11ms316 KiB
12Elfogadva1/11ms316 KiB
13Hibás válasz0/11ms316 KiB
14Hibás válasz0/11ms316 KiB
15Hibás válasz0/11ms332 KiB
16Hibás válasz0/12ms508 KiB
17Hibás válasz0/12ms316 KiB
18Hibás válasz0/12ms316 KiB
19Hibás válasz0/21ms512 KiB
20Hibás válasz0/21ms508 KiB
21Hibás válasz0/34ms524 KiB
22Hibás válasz0/38ms508 KiB
23Hibás válasz0/420ms552 KiB
24Hibás válasz0/421ms472 KiB
25Hibás válasz0/441ms592 KiB
26Hibás válasz0/441ms724 KiB
27Hibás válasz0/475ms1168 KiB
28Hibás válasz0/475ms1124 KiB