Codeforces Round 215 (Div. 1) |
---|
Закончено |
У Сережи есть две последовательности a и b, a также число p. Последовательность a состоит из n целых чисел a1, a2, ..., an. Аналогично, последовательность b состоит из m целых чисел b1, b2, ..., bm. Как обычно, Сережа изучает имеющиеся у него последовательности. Сегодня он хочет найти количество позиций q (q + (m - 1)·p ≤ n; q ≥ 1) таких, что последовательность b можно получить из последовательности aq, aq + p, aq + 2p, ..., aq + (m - 1)p перестановкой ее элементов.
Сереже нужно бежать в тренажерный зал, поэтому он попросил вас найти все описанные позиции q.
В первой строке содержатся три целых числа n, m и p (1 ≤ n, m ≤ 2·105, 1 ≤ p ≤ 2·105). В следующей строке содержатся n целых чисел a1, a2, ..., an (1 ≤ ai ≤ 109). В следующей строке содержатся m целых чисел b1, b2, ..., bm (1 ≤ bi ≤ 109).
В первой строке выведите количество подходящих q. Во вторую строку выведите сами подходящие значения в возрастающем порядке.
5 3 1
1 2 3 2 1
1 2 3
2
1 3
6 3 2
1 3 2 2 3 1
1 2 3
2
1 2
Название |
---|