아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Начало конца

시간 제한2초메모리 제한1024 MB

요약
길이 k인 모든 구간을 차례로 뒤집는 연산을 적용한 결과가 주어질 때, 그 결과를 만들 수 있는 k를 모두 구한다.
난이도

보통10점 중 7점

유형
완전 탐색, 배열, 시뮬레이션
정답자
아직 제출이 없습니다

문제

Это начало конца.

Теглайн фильма <<Терминатор: Да придет спаситель>>

Джон Коннор и Маркус Райт добрались до главной сборочной базы терминаторов Т-800. Теперь они готовы взорвать эту базу и положить конец одной из битв за будущее человечества. Однако, они заметили странный спецэффект --- топливные элементы терминаторов, которые они хотят взорвать, были переставлены за время их битвы с одним из активированных Т-800. Джон и Маркус решили, во избежание непредвиденных последствий, переставить их назад перед взрывом.

На каждом из nn топливных элементов написано число. До перестановки все они были выставлены в ряд. Джон и Маркус знают, что перестановка выполнялась по следующему алгоритму:

  • разворачивается отрезок из kk топливных элементов, начинающийся в первом слева элементе
  • разворачивается отрезок из kk топливных элементов, начинающийся во втором слева элементе
  • …\ldots
  • разворачивается отрезок из kk топливных элементов, заканчивающийся в самом правом элементе

Таким образом, если исходно в ряд были выставлены элементы с написанными числами [1, 2, 3, 1, 2], а число kk было равно трем, то после перестановки порядок чисел на элементах будет таким: [3, 1, 2, 2, 1].

Единственное, чего Джон и Маркус не знают --- число kk. Они помнят порядок чисел, записанных на элементах до их перестановки, и видят порядок чисел на элементах после нее. Помогите им восстановить возможные значения числа kk.

입력

В первой строке входного файла задано число nn (1≤n≤100,0001 \le n\le 100{\\,}000) --- количество топливных элементов.

Далее идут две строки по nn чисел a_ia\_i (1≤a_i≤100,0001 \le a\_i \le 100{\\,}000) в каждой --- порядок чисел на элементах до и после перестановки соответственно.

Гарантируется, что количество вхождений любого числа в данные последовательности совпадает.

출력

В единственной строке выведите число xx --- количество возможных чисел kk. В следующей строке выведите xx различных чисел, разделенных пробелами --- сами варианты чисел.

Варианты выводить в порядке возрастания.

예제1

  1. 예제 1

    입력
    5
    1 2 3 1 2
    3 1 2 2 1
    
    예상 출력
    1
    3