#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n, q;
cin >> n >> q;
vector<int> cars(n);
for (int i = 0; i < n; i++) {
cin >> cars[i];
}
vector<int> count(n + 1, 0);
int mostElőzöttAutó = cars[0];
count[cars[0]] = 0;
for (int i = 1; i <= q; i++) {
int előzőAutó, utoljáraElőzöttAutó;
cin >> előzőAutó;
utoljáraElőzöttAutó = cars[előzőAutó-1];
count[utoljáraElőzöttAutó]++;
if (count[utoljáraElőzöttAutó] > count[mostElőzöttAutó] || (count[utoljáraElőzöttAutó] == count[mostElőzöttAutó] && utoljáraElőzöttAutó < mostElőzöttAutó)) {
mostElőzöttAutó = utoljáraElőzöttAutó;
}
cout << mostElőzöttAutó << endl;
}
return 0;
}
Subtask | Sum | Test | Verdict | Time | Memory | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Wrong answer | 3ms | 1812 KiB | ||||
subtask2 | 0/30 | ||||||
2 | Wrong answer | 3ms | 2000 KiB | ||||
3 | Wrong answer | 3ms | 2084 KiB | ||||
4 | Wrong answer | 4ms | 2220 KiB | ||||
5 | Wrong answer | 4ms | 2312 KiB | ||||
6 | Wrong answer | 6ms | 2456 KiB | ||||
7 | Wrong answer | 6ms | 2548 KiB | ||||
subtask3 | 0/70 | ||||||
8 | Wrong answer | 252ms | 3256 KiB | ||||
9 | Wrong answer | 344ms | 3668 KiB | ||||
10 | Wrong answer | 298ms | 4264 KiB | ||||
11 | Wrong answer | 172ms | 4792 KiB | ||||
12 | Wrong answer | 354ms | 4940 KiB | ||||
13 | Wrong answer | 277ms | 5380 KiB | ||||
14 | Wrong answer | 277ms | 6004 KiB | ||||
15 | Wrong answer | 442ms | 6168 KiB | ||||
16 | Wrong answer | 497ms | 6492 KiB | ||||
17 | Wrong answer | 351ms | 6464 KiB | ||||
18 | Wrong answer | 347ms | 6460 KiB | ||||
19 | Wrong answer | 202ms | 6416 KiB | ||||
20 | Wrong answer | 328ms | 6228 KiB | ||||
21 | Wrong answer | 319ms | 6240 KiB |