No.3184 Make Same
レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / スペシャルジャッジ問題 (複数の解が存在する可能性があります)
タグ : / 解いたユーザー数 76
作問者 :
蜜蜂
/ テスター :
Mitarushi
タグ : / 解いたユーザー数 76
作問者 :

問題文最終更新日: 2025-06-15 12:53:52
問題文
長さ $N$ の非負整数列 $A = (A_1, A_2, \cdots, A_N)$ が与えられます.ここで,$A$ は広義単調増加であることが保証されます.
あなたの目標は $A$ の要素をすべて同じにすることです.そのために,以下の操作を $30$ 回まで行うことができます.
- $1 \leq l \leq r \leq N, 0 \leq v \leq 10^9$ を満たす $3$ つの整数 $l, r, v$ を宣言する.
- その後,$i = l, l + 1, \cdots, r$ について $A_i$ を $A_i + v$ で置き換える.
- 最後に,$A$ を昇順に並び替える.
入力
$N$
$A_1\ \ A_2\ \ \cdots A_N$
- $1 \leq N \leq 2 \times 10^5$
- $0 \leq A_i \leq 10^9$
- $A_i \leq A_{i + 1}$
- 入力はすべて整数
出力
$M$ 回の操作で目標を達成できる場合,まず $1$ 行目に $M$ を出力してください.
その後,$M$ 行出力してください.$i$ 行目には $i$ 回目の操作で宣言する $l, r, v$ を空白区切りで出力してください.
サンプル
サンプル1
入力
4
1 3 4 6
出力
4
2 3 4
1 1 6
1 1 2
1 2 1
- $1$ 回目の操作の後,$A = (1, 6, 7, 8)$ となります.
- $2$ 回目の操作の後,$A = (6, 7, 7, 8)$ となります.
- $3$ 回目の操作の後,$A = (7, 7, 8, 8)$ となります.
- $4$ 回目の操作の後,$A = (8, 8, 8, 8)$ となります.
サンプル2
入力
1
0
出力
0
最初から目標が達成されている場合,操作回数を $0$ 回としても構いません.
サンプル3
入力
3
1 2 3
出力
4
3 3 997
1 1 999
1 1 998
1 3 0
最終的に $A = (1000, 1000, 1000)$ となります.
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。