#include "king.h"
#include <bits/stdc++.h>
using namespace std;
long long SendInfo(std::vector<int> W, std::vector<int> C) {
int N = W.size();
sort(W.begin(), W.end()); reverse(W.begin(), W.end());
sort(C.begin(), C.end()); reverse(C.begin(), C.end());
int l = 0, r = N-1;
while(l <= r) {
int m = l+r >> 1;
bool f = 1;
for(int i=0; i<=m; i++) if(C[i] < W[i]) f = 0;
if(f) l = m+1;
else r = m-1;
}
return W[l];
}
#include "vassal.h"
#include <bits/stdc++.h>
using namespace std;
using pii = pair<int, int>;
long long BB;
set<pii> st;
int c = 0;
void Init(long long B, std::vector<int> C){
int N = C.size();
BB = B;
for(int i=0; i<N; i++) st.insert({C[i], i});
}
int Maid(int W) {
if(1LL*W > BB) return -1;
auto it = st.lower_bound({W, -1});
if(it == st.end()) return -1;
st.erase(it);
return (*it).second;
}
Compilation message
king.cpp: In function 'long long int SendInfo(std::vector<int>, std::vector<int>)':
king.cpp:11:18: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
int m = l+r >> 1;
~^~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
10 ms |
1052 KB |
Wrong |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
64 ms |
5836 KB |
Correct |
2 |
Correct |
119 ms |
9120 KB |
Correct |
3 |
Correct |
121 ms |
10428 KB |
Correct |
4 |
Correct |
121 ms |
10436 KB |
Correct |
5 |
Correct |
119 ms |
10436 KB |
Correct |
6 |
Correct |
120 ms |
10436 KB |
Correct |
7 |
Correct |
123 ms |
10436 KB |
Correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Partially correct |
88 ms |
5924 KB |
B = 999996 |
2 |
Partially correct |
144 ms |
9640 KB |
B = 999990 |
3 |
Partially correct |
147 ms |
10180 KB |
B = 999993 |
4 |
Partially correct |
168 ms |
10440 KB |
B = 999994 |
5 |
Incorrect |
163 ms |
10440 KB |
Wrong |
6 |
Halted |
0 ms |
0 KB |
- |