욱제는 결벽증이야!!

1부터 N까지의 순열을 구간 뒤집기만으로 정렬하는 문제로, N*N번 이하의 뒤집기로 카드 i를 i번 위치에 놓아야 한다.

보통6배열정렬구현그리디면접 대비아직 제출이 없습니다시간 제한2초메모리 제한256 MB

문제

1부터 NN까지의 정수가 하나씩 적힌 NN장의 카드를 일렬로 배열한다. 구간 [L,R][L, R] (1L<RN1 \le L < R \le N)을 선택해 그 구간을 통째로 뒤집는 연산을 사용할 수 있다. 가령 배열 [1,5,10,15,20,25][1, 5, 10, 15, 20, 25]에서 [2,5][2, 5]를 뒤집으면 [1,20,15,10,5,25][1, 20, 15, 10, 5, 25]가 된다.

왼쪽부터 위치에 번호를 매길 때, ii번째 카드에 숫자 ii가 적힌 배치를 목표 배치라 한다. 연산을 적절히 수행해 목표 배치와 일치하는 카드 수를 최대로 만들어야 한다. 모든 순열은 뒤집기 연산만으로 정렬할 수 있으므로, 최대값은 항상 NN이다.

입력

첫째 줄에 카드 수 NN이 주어진다 (1N10001 \le N \le 1000).

둘째 줄에 초기 카드 배열 NN개의 정수가 왼쪽부터 순서대로 주어진다.

출력

첫째 줄에 연산 횟수 opop를 출력한다. opopN×NN \times N 이하이어야 한다.

이후 opop개의 줄에 걸쳐 수행한 연산 구간 [L,R][L, R]을 순서대로 출력한다. 각 줄에는 LLRR을 하나의 공백으로 구분해 출력한다. opop00이면 추가로 출력하지 않는다. 모든 연산을 적용한 뒤의 배열이 목표 배치와 일치해야 한다.