242922026-02-08 11:32:59hunzombiDarabolás (50 pont)cpp17Accepted 50/5079ms1452 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n, m;
    cin >> n >> m;
    vector<int> v1, v2;
    int x;
    for (int i=1; i < n; i++) {
        cin >> x;
        v1.push_back(x);
    }
    for (int i=1; i < m; i++) {
        cin >> x;
        v2.push_back(x);
    }

    sort(v1.begin(), v1.end(), greater<int>());
    sort(v2.begin(), v2.end(), greater<int>());

    int left = 0, top = 0;
    int vert_cnt = 1, hor_cnt = 1;
    long long res = 0;
    while (top < v1.size() && left < v2.size()) {
        if (v1[top] > v2[left]) {
            res += v1[top] * hor_cnt;
            top++;
            vert_cnt++;
        } else {
            res += v2[left] * vert_cnt;
            hor_cnt++;
            left++;
        }
    }
    while (top < v1.size()) {
        res += v1[top] * hor_cnt;
        top++;
    }
    while (left < v2.size()) {
        res += v2[left] * vert_cnt;
        left++;
    }
    cout << res << '\n';
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/043ms944 KiB
3Accepted1/11ms316 KiB
4Accepted1/12ms316 KiB
5Accepted1/11ms316 KiB
6Accepted1/11ms384 KiB
7Accepted1/11ms316 KiB
8Accepted1/11ms316 KiB
9Accepted1/11ms316 KiB
10Accepted1/11ms316 KiB
11Accepted1/12ms316 KiB
12Accepted1/11ms316 KiB
13Accepted1/11ms316 KiB
14Accepted1/11ms592 KiB
15Accepted1/11ms316 KiB
16Accepted1/11ms316 KiB
17Accepted1/12ms500 KiB
18Accepted1/12ms316 KiB
19Accepted2/22ms500 KiB
20Accepted2/22ms316 KiB
21Accepted3/34ms316 KiB
22Accepted3/38ms512 KiB
23Accepted4/421ms668 KiB
24Accepted4/421ms772 KiB
25Accepted4/443ms1080 KiB
26Accepted4/443ms1016 KiB
27Accepted4/479ms1400 KiB
28Accepted4/478ms1452 KiB