Submission #927425

#TimeUsernameProblemLanguageResultExecution timeMemory
927425NonozeA Plus B (IOI23_aplusb)C++17
0 / 100
1 ms344 KiB
#include "aplusb.h" #include <bits/stdc++.h> using namespace std; #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace __gnu_pbds; typedef tree<int,null_type,less<int>,rb_tree_tag,tree_order_statistics_node_update>ordered_set; typedef long long ll; // #define int long long #define sz(x) (int)(x.size()) #define debug(x) cerr << (#x) << ": " << (x) << endl #define all(x) (x).begin(), (x).end() #define rall(x) (x).rbegin(), (x).rend() vector<int> smallest_sums(int N, vector<int> A, vector<int> B) { int n=N; auto a=A, b=B; priority_queue<tuple<int, int, int>, vector<tuple<int, int, int>>, greater<>> pq; for (int i=0; i<n-1; i++) pq.push({a[i] + b[0], i, 0}); vector<int> ans; while (sz(ans)<n) { int val, x, y; tie(val, x, y)=pq.top(); pq.pop(); ans.push_back(val); if (y+1<n) pq.push({a[x]+b[y+1], x, y+1}); } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...