#include <bits/stdc++.h>
using namespace std;
long long k, n;
set<string> s, a;
string x, y, z;
int main (){
ios::sync_with_stdio(0);
cin.tie(0);
cin >> k >> n;
for (int i=0;i<k;i++){
cin >> x;
s.insert(x);
}
set<string>::iterator its1 = s.begin();
set<string>::iterator its2 = s.begin();
set<string>::iterator ita1 = a.begin();
set<string>::iterator ita2 = a.begin();
for (int i=0;i<n;i++){
cin >> y;
z = y + "zzzzzzzzzzzzzzzzzzzzzz";
its1 = s.lower_bound(y);
its2 = s.lower_bound(z);
if (its1 == its2){
ita1 = a.lower_bound(y);
ita2 = a.lower_bound(z);
while (ita1 != ita2){
ita1 = a.lower_bound(y);
if (ita1 == a.end()) break;
s.insert(*ita1);
a.erase(ita1);
}
its1 = s.lower_bound(y);
}
cout << "\n" << *its1;
a.insert(*its1);
s.erase(its1);
}
return 0;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Incorrect |
2 ms |
464 KB |
Output isn't correct |
3 |
Correct |
3 ms |
464 KB |
Output is correct |
4 |
Correct |
3 ms |
480 KB |
Output is correct |
5 |
Incorrect |
3 ms |
548 KB |
Output isn't correct |
6 |
Incorrect |
3 ms |
548 KB |
Output isn't correct |
7 |
Incorrect |
306 ms |
12580 KB |
Output isn't correct |
8 |
Incorrect |
296 ms |
14228 KB |
Output isn't correct |
9 |
Incorrect |
301 ms |
15880 KB |
Output isn't correct |
10 |
Incorrect |
299 ms |
17748 KB |
Output isn't correct |