Submission #912390

# Submission time Handle Problem Language Result Execution time Memory
912390 2024-01-19T11:21:53 Z vjudge1 Potatoes and fertilizers (LMIO19_bulves) C++17
24 / 100
764 ms 71012 KB
#include <bits/stdc++.h>

using namespace std;

int main() {
    ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
    long long n;
    cin >> n;
    long long a[n], b[n];
    map <long long, long long> mp;
    map <long long, long long> mp1;
    map <long long, long long> mp2;
    map <long long, long long> mp3;
    long long p = 0;
    long long g = 0;
    long long ok = 0;
    long long okk = 0;
    long long cnt = 0;
    for (int i = 0; i < n; i++) {
        cin >> a[i] >> b[i];
        if (a[i] >= b[i]) {
            a[i] -= b[i];
            b[i] = 0;
        }
        else {
            b[i] -= a[i];
            a[i] = 0;
        }
        if (a[i] > 0) {
            mp2[okk] = a[i];
            mp3[okk] = i;
            okk++;
        }
        if (b[i] > 0) {
            mp[ok] = b[i];
            mp1[ok] = i;
            ok++;
        }
    }
    for (int j = 0; j < ok; j++) {
        for (int i = g; i < okk; i++) {
            if (mp[j] < mp2[i]) {
                cnt += mp[j]*abs(mp1[j]-mp3[i]);
                mp2[i] -= mp[j];
                mp[j] = 0;
                break;
            }
            else {
                cnt += mp2[i]*abs(mp1[j]-mp3[i]);
                mp[j] -= mp2[i];
                mp2[i] = 0;
                p++;
                if (mp[j] == mp2[i]) {
                    break;
                }
            }
        }
        g += p;
        p = 0;
    }
    cout << cnt;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 2 ms 860 KB Output is correct
4 Correct 35 ms 7500 KB Output is correct
5 Correct 76 ms 14516 KB Output is correct
6 Correct 109 ms 16724 KB Output is correct
7 Correct 538 ms 70876 KB Output is correct
8 Correct 764 ms 71012 KB Output is correct
9 Correct 512 ms 70936 KB Output is correct
10 Correct 668 ms 70892 KB Output is correct
11 Correct 628 ms 70736 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 2 ms 860 KB Output is correct
4 Correct 35 ms 7500 KB Output is correct
5 Correct 76 ms 14516 KB Output is correct
6 Correct 109 ms 16724 KB Output is correct
7 Correct 538 ms 70876 KB Output is correct
8 Correct 764 ms 71012 KB Output is correct
9 Correct 512 ms 70936 KB Output is correct
10 Correct 668 ms 70892 KB Output is correct
11 Correct 628 ms 70736 KB Output is correct
12 Incorrect 109 ms 16164 KB Output isn't correct
13 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Incorrect 1 ms 344 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 2 ms 860 KB Output is correct
4 Incorrect 1 ms 344 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 2 ms 860 KB Output is correct
4 Incorrect 1 ms 344 KB Output isn't correct
5 Halted 0 ms 0 KB -