조작

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

문제

지민이의 반에는 $N$명의 학생이 있습니다. 지민이의 반은 최근에 중간고사를 봤는데, 지민이는 우연히 각 학생들의 중간고사 점수를 입수하게 되었습니다. $i$번째 학생의 중간고사 성적은 $A_i$입니다.

지민이는 평등을 매우 중요시하기 때문에, 이 점수들을 조작하여 점수의 최댓값과 최솟값의 차이를 최소화하고자 합니다. 이때, 한 번의 조작은 다음과 같은 과정으로 이루어집니다.

  • 임의의 정수 $k$와 $1\le i\le N-1$인 정수 $i$를 선택하여, $A_i$와 $A_{i+1}$에 $k$를 더한다.

성적은 음수가 될 수도 있습니다. 지민이를 도와 학생들의 성적을 $10^6$회 이하로 조작하여 $\max A-\min A$를 최소화하는 프로그램을 작성하세요.

입력

첫째 줄에 학생의 수 $N$이 주어집니다.

둘째 줄에 학생들의 성적 $A_1$, $A_2$, $\cdots$, $A_N$이 띄어쓰기를 사이에 두고 주어집니다.

출력

첫째 줄에 조작을 통해 지민이가 달성할 수 있는 $\max A-\min A$의 최솟값을 출력합니다.

둘째 줄에 최솟값을 달성하기 위해 필요한 조작의 횟수 $M$을 출력합니다. 조작의 횟수를 최소화할 필요는 없습니다.

셋째 줄부터 $M+2$번째 줄까지 두 정수 $i$, $k$를 띄어쓰기를 사이에 두고 출력합니다. 이때 $x+2$번째 줄에 출력하는 $i$, $k$는 $x$번째 조작이 $A_i$와 $A_{i+1}$에 $k$를 더하는 시행이었음을 나타냅니다. $(1 \le x \le M)$

제한

입력은 다음 조건을 만족합니다.

  • $2 \le N \le 10^5$
  • $0 \le A_i \le 10^9$ $(1 \le i \le N)$

출력은 다음 조건을 만족해야 합니다.

  • $0 \le M \le 10^6$. $10^6$회 이하의 조작으로 $\max A-\min A$의 값을 최소화할 수 있음을 증명할 수 있습니다.
  • 모든 출력에서 $1 \le i \le N-1$.
  • $M$번의 조작을 하는 도중, 그리고 모든 조작이 완료된 후 $1 \le j \le N$인 모든 정수 $j$에 대해 $-10^{18} \le A_j \le 10^{18}$을 만족해야 합니다.
  • $M$번의 조작이 모두 끝난 후에는 $\max A-\min A$의 값이 첫째 줄에 출력한 값과 동일해야 합니다.

힌트

$\max A$는 $A$의 원소들 중의 최댓값을, $\min A$는 $A$의 원소들 중의 최솟값을 뜻합니다.