Нова розвага
Limits: 2 sec., 256 MiB
Зеник та Марічка вже давно є власниками масиву \(a\) з \(n\) натуральних чисел, кожне з яких є у межах від 1 до \(k\). Сьогодні вони дістали перестановку \(p\) довжини \(k\), та миттєво придумали нову розвагу. Вона складається з \(n\) раундів, пронумерованих від 1 до \(n\).
Кожен раунд виглядає наступним чином: спершу Марічка швидко визначає, чи перестановка \(p\) зустрічається в масиві \(a\) як підпослідовність. Після цього, Зеник переставляє перший елемент масиву \(a\) в його кінець. Таким чином, після \(n\) раундів масив \(a\) повернеться до свого початкового вигляду.
Кожен раунд у якому виявляється що перестановка є підпослідовністю масиву Зеник та Марічка вважають успішним. Ваше завдання: знайдіть номери усіх успішних раундів.
Input
У першому рядку задано два цілі числа \(n\) та \(k\). У другому рядку задано \(n\) цілих чисел — масив \(a\). У третьому рядку задано \(k\) цілих чисел — перестановка \(p\).
Output
У першому рядку виведіть одне число — кількість успішних раундів. Якщо ця кількість не рівна нулю, то у другому рядку виведіть номери усіх успішних раундів в порядку зростання.
Constraints
\(1 \le k \le n \le 10^6\),
\(1 \le a_i, p_i \le k\),
усі числа від 1 до \(k\) зустрічаються в \(p\) по одному разу.
Samples
Input (stdin) | Output (stdout) |
---|---|
6 3 1 2 3 1 2 3 3 2 1 | 4 2 3 5 6 |
Input (stdin) | Output (stdout) |
---|---|
7 4 1 3 1 2 4 4 3 1 4 2 3 | 0 |
Input (stdin) | Output (stdout) |
---|---|
4 4 2 1 4 3 3 2 1 4 | 1 4 |
Notes
Перестановка довжини \(k\) — послідовність з \(k\) чисел, в якій кожне число від 1 до \(k\) зустрічається по одному разу.
Підпослідовність масиву — послідовність елементів масиву, котрі залишились після видалення деякої кількості (можливо 0) елементів масиву.
Submit a solution
Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
---|
Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
---|