# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
841730 | Muhammad_Aneeq | A Plus B (IOI23_aplusb) | C++17 | 41 ms | 4900 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <vector>
#include <algorithm>
#include "aplusb.h"
using namespace std;
inline bool check(vector<int>a,vector<int>b,int o)
{
int k=a.size();
for (int i=0;i<a.size();i++)
{
for (int j=0;j<a.size();j++)
{
if (a[i]+b[j]<=o)
k--;
else
break;
if (k==0)
return 1;
}
}
return 0;
}
vector<int> smallest_sums(int n,vector<int> a ,vector<int> b)
{
long long st=-1,en=2e9+10;
while (st+1<en)
{
int mid=(st+en)/2;
if (check(a,b,mid))
en=mid;
else
st=mid;
}
vector<int>ans;
int k=0;
for (int i=0;i<n;i++)
{
for (int j=0;j<n;j++)
{
if (a[i]+b[j]<=en)
ans.push_back(a[i]+b[j]);
else
break;
}
}
sort(ans.begin(), ans.end());
ans.resize(n);
return ans;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |