Octagoon

Time limit: 0.4s Memory limit: 128MB Input: Output:

Octa și Goon au inventat un joc nou.

Cerință

Se dau două șiruri de numere naturale AA și BB de lungime NN, respectiv MM. Pentru fiecare ii de la 11 la NN. Trebuie să spuneți câte valori jj, unde 1jM1 \leq j \leq M există astfel încât șirul format din primele ii elemente ale lui AA, urmat de primele jj elemente ale lui BB să conțină element majoritar. Mai exact, șirul [A1,A2,A3,,Ai,B1,B2,B3,,Bj][A_1, A_2, A_3, \dots, A_i, B_1, B_2, B_3, \dots , B_j] sa conțină element majoritar.

Spunem că un șir x1,x2,xkx_1, x_2, \dots x_k conține element majoritar dacă există o valoare VV astfel încât VV apare de cel puțin K2+1\lfloor \frac{K}{2} \rfloor + 1 ori în șirul xx.

Date de intrare

Pe prima linie se găsesc numerele N,MN, M.

Pe a doua linie se află NN numere naturale, reprezentând șirul AA.

Pe a treia linie se află MM numere naturale, reprezentând șirul BB.

Date de ieșire

Pe prima linie se vor afișa NN numere. Al ii-lea număr fiind răspunsul pentru prefixul de lungime ii din șirul AA.

Restricții și precizări

Atenție!\textcolor{red}{Atenție!} Din cauza numărului mare de date de intrare, respectiv ieșire, vă recomandăm să adăugați următoarele linii de cod la începutul funcției main().

ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
  • 1N,M300 0001 \leq N, M \leq 300 \ 000
  • 1Ai,BiN+M1 \leq A_i, B_i \leq N + M
# Punctaj Restricții
1 11 N,M300N, M \leq 300
2 17 N,M3 000N, M \leq 3 \ 000
3 29 Sunt cel mult 300300 de valori distincte în AA și BB în total
4 18 Orice element apare de cel mult 2 5002 \ 500 de ori în total în AA și BB
5 25 Fără alte restricții

Exemplu

stdin

7 10
2 2 1 3 1 1 1
1 2 3 3 3 1 1 1 2 1

stdout

1 3 1 0 0 1 4 

Explicație

Pentru i=1i = 1, singurul jj care este bun este j=2j = 2. Pentru i=1i = 1 și j=2j = 2, șirul obținut este [2,1,2][2, 1, 2], unde 22 este element majoritar. În schimb, pentru i=1i = 1 și j=1j = 1, șirul obținut este [2,1][2, 1] unde nici 11, nici 22 nu sunt elemente majoritare deoarece ele apar o singură dată, când ar trebui să apară de 22 ori.

Log in or sign up to be able to send submissions!