# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1169220 | Szymon_Pilipczuk | Jelly Flavours (IOI20_jelly) | C++20 | 8 ms | 332 KiB |
#include <bits/stdc++.h>
using namespace std;
int find_maximum_unique(int x,int y,vector<int> a,vector<int> b)
{
int t = 0;
if(y == 0)
{
t = 3;
}
else
{
bool q = true;
for(int i = 0;i<b.size()-1;i++)
{
if(b[i] != b[i+1])
{
q = false;
}
}
if(q)
{
t = 4;
}
}
if(t == 3)
{
int ans = 0;
vector<int> mya;
for(int i = 0;i<a.size();i++)
{
if(b[i] == 0)
{
ans++;
}
else
{
mya.push_back(a[i]);
}
}
sort(mya.begin(),mya.end());
for(int i =0 ;i<mya.size();i++)
{
if(x >= mya[i])
{
x-=mya[i];
ans++;
}
}
return ans;
}
else if(a.size() <= 12)
{
int tans = 0;
for(int i = 0;i<(1<<a.size());i++)
{
vector<int> p;
int ans = 0;
int myx = 0;
int ci = i;
int j =0;
while(ci > 0)
{
if(ci%2)
{
myx += a[j];
ans++;
}
else
{
p.push_back(b[j]);
}
j++;
ci/=2;
}
if(myx <= x)
{
int myy = y;
sort(p.begin(),p.end());
for(int j = 0;j<p.size();j++)
{
if(myy >= p[j])
{
ans++;
myy-=p[j];
}
}
tans = max(ans,tans);
}
}
return tans;
}
}
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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |