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"
#include <algorithm>
long long SendInfo(std::vector<int> W, std::vector<int> C) {
sort(W.begin(), W.end());
sort(C.begin(), C.end());
int last = 0;
long long ans = 0;
for(int w : W)
{
while(last < C.size() && w > C[last]) last++;
if(last < C.size() && w <= C[last]) ans = w;
}
return ans;
}
#include "vassal.h"
#include <algorithm>
#include <utility>
typedef std::pair<int, int> pii;
long long BB;
std::vector<pii> CC;
bool isSeated[1100000];
void Init(long long B, std::vector<int> C){
int N = C.size();
BB = B;
for(int i = 0; i < N; i++)
CC.emplace_back(C[i], i);
sort(CC.begin(), CC.end());
}
int Maid(int W) {
if(W > BB) return -1;
auto it = lower_bound(CC.begin(), CC.end(), pii(W, -1));
int pos = it->second;
while(isSeated[pos]) pos++;
isSeated[pos] = true;
return pos;
}
Compilation message (stderr)
king.cpp: In function 'long long int SendInfo(std::vector<int>, std::vector<int>)':
king.cpp:11:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
while(last < C.size() && w > C[last]) last++;
~~~~~^~~~~~~~~~
king.cpp:12:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if(last < C.size() && w <= C[last]) ans = w;
~~~~~^~~~~~~~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |