제출 #933327

#제출 시각아이디문제언어결과실행 시간메모리
933327sleepntsheepA Plus B (IOI23_aplusb)C++17
10 / 100
1 ms348 KiB
#include "aplusb.h"
#include <tuple>
#include <map>
#include <utility>
#include <queue>

std::vector<int> smallest_sums(int n, std::vector<int> a, std::vector<int> b)
{
    std::vector<int> c(n);

    std::map<std::pair<int, int>, int> d;
    std::priority_queue<std::tuple<int, int, int>> q;
    q.emplace(-a[0] + -b[0], 0, 0);
    for (int k=0;k<n;++k)
    {
        auto [aa,i,j]=q.top();q.pop();
        c[k]=-aa;
        if(i+1<n) q.emplace(-a[i+1]+-b[j],i+1,j);
        if(j+1<n) q.emplace(-a[i]+-b[j+1],i,j+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...