# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
149251 | Little Piplup (#200) | King of Chairs (FXCUP4_chairs) | C++17 | 0 ms | 0 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 "king.h"
long long SendInfo(std::vector<int> W, std::vector<int> C)
{
int N = W.size();
std::sort(C.begin(),C.end());
std::sort(W.begin(),W.end());
std::vector <bool> able(N, false);
std::vector <bool> FC(N, false);
long long maxweight = 0;
for (int i = 0; i<N; i++)
{
int u = std::lower_bound(C.begin(),C.end(),W[i])-C.begin();
while(u < N && FC[u])
{
u++;
}
if (u == N)
{
continue;
}
else
{
FC[u] = 1;
maxweight = std::max(maxweight,(long long)W[i]);
}
}
return maxweight;
}
#include "vassal.h"
#include <algorithm>
long long BB;
std::vector <int> Chairs;
bool fullchair[101010];
void Init(long long B, std::vector<int> C)
{
int N = C.size();
BB = B;
Chairs = C;
std::sort(Chairs.begin(),Chairs.end());
}
int Maid(int W)
{
if (W > BB)
return -1;
int N = Chairs.size();
int u = std::lower_bound(Chairs.begin(),Chairs.end(),W)-Chairs.begin();
while(u < N && fullchair[u])
{
u++;
}
if (u == N)
{
return -1;
}
else
{
fullchair[u] = 1;
return u;
}
}