Қайталаулар
Сізге \(N\) оң сандарынан тұратын \(A = (A_1, A_2, \dots, A_N)\) тізбегі берілген. \(B = (B_1, B_2, \dots, B_N)\) тізбегін мынадай түрде табыңыз:
\(i = 1, 2, \dots, N\) үшін \(B_i\) келесідей анықталады:
\(B_i\) — \(A_i\) элементінің \(i\) позициясынан бұрынғы соңғы рет кездескен позициясы болсын. Нақтырақ айтқанда, егер \(j < i\) және \(A_j = A_i\) шартын қанағаттандыратын \(j\) бар болса, онда \(B_i = j\).
Егер мұндай \(j\) болмаса, \(B_i = -1\) деп есептеңіз.
Енгізу
Бірінші жолда бір бүтін сан \(N\) \((1 \leq N \leq 2 \times 10^5)\).
Екінші жолда \(A_1, A_2, \dots, A_N\) \((1 \leq A_i \leq 10^9)\) бүтін сандары.
Шығару
\(B\) тізбегінің \(N\) элементін бос орындармен бөлінген түрде шығарыңыз.
Мысалдар
Енгізу 1
5
1 2 1 1 3
Жауап 1
-1 -1 1 3 -1
Ескертпелер
Бұл мысалда:
\(i = 1\) үшін \(A_1 = 1\). Бұрын \(1\) кездеспеген, сондықтан \(B_1 = -1\).
\(i = 2\) үшін \(A_2 = 2\). Бұрын \(2\) кездеспеген, сондықтан \(B_2 = -1\).
\(i = 3\) үшін \(A_3 = 1\). Бұрын \(1\) 1-ші позицияда кездескен, сондықтан \(B_3 = 1\).
\(i = 4\) үшін \(A_4 = 1\). Бұрын \(1\) 3-ші позицияда кездескен, сондықтан \(B_4 = 3\).
\(i = 5\) үшін \(A_5 = 3\). Бұрын \(3\) кездеспеген, сондықтан \(B_5 = -1\).
Пікірлер