Submission #1153982

#TimeUsernameProblemLanguageResultExecution timeMemory
1153982JahonaliXA Plus B (IOI23_aplusb)C++17
100 / 100
74 ms13248 KiB
#include <bits/stdc++.h>

using namespace std;

vector<int> smallest_sums(int n, vector<int> a, vector<int> b) {
    set<tuple<int, int, int>> s;
    vector<int> c;
    s.emplace(a[0] + b[0], 0, 0);
    set<pair<int, int>> k;
    while (c.size() < n) {
        auto [x, y, z] = *s.begin();
        s.erase(s.begin());
        if (k.count({y, z})) continue;
        k.emplace(y, z);
        c.emplace_back(x);
        s.emplace(a[y + 1] + b[z], y + 1, z);
        s.emplace(b[z + 1] + a[y], y, z + 1);
    }
    return c;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...