#include<bits/stdc++.h>
using namespace std;
int find_maximum_unique(int A, int B, vector<int> a, vector<int> b)
{
//int A,B,x,y,n;
vector<pair<int,int>> tab;
//cin >> n >> A >> B;
int suma3 = 0;
for(int i = 0;i < (int)a.size();++i)
{
tab.push_back({a[i],b[i]});
suma3 += b[i];
}
if(suma3 <= B)
{
return (int)a.size();
}
sort(tab.begin(),tab.end());
int wyn = 0,ile,suma,suma2 = 0;
for(int i = 0;i < (int)a.size();++i)
{
suma2 += tab[i].first;
if(suma2 > A)
{
break;
}
vector<int> licz;
ile = 0;
suma = 0;
for(int j = i+1;j < (int)a.size();++j)
{
licz.push_back(tab[j].second);
}
sort(licz.begin(),licz.end());
while(suma <= B && i < (int)a.size())
{
if(suma+licz[ile] <= B)
{
suma += licz[ile];
ile++;
}
else
{
break;
}
}
wyn = max(wyn,ile+i+1);
}
return wyn;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |