小苯有一个长度为 的数组 ,他希望将 变成严格递减的,具体的,他可以对 数组做如下操作: ● 选择一个前缀,再选择一个整数 ,将选择的数字都加上 ,即 。 ● 选择一个前缀,再选择一个整数 ,将选择的数字都对 取模,即 。 请问他能否在 次操作以内将 变为严格递减的,如果可以的话请你帮他构造出一个合法方案吧。 前缀是指从下标为 开始的一段连续区间。严格递减是指数组每一项都严格小于上一项,不能等于。
输入描述:
第一行输入一个整数  代表数组中元素的数量。第二行输入  个整数  代表数组中的元素。


输出描述:
第一行输出一个整数 代表操作次数。此后  行,第 行输出三个整数  和  代表第  步操作的操作类型,前缀的位置和选择的数字。如果您构造的操作方案中有任何数字超过了限制的范围,将会被视为错误。如果有多种合法答案,您可以输出任意一种。
示例1

输入

5
7 9 11 10 2

输出

3
2 4 6
1 2 3
1 1 3

说明

一种可能的操作方式(样例的操作方式)是:
先选择前缀 [1, 4], x = 6 进行操作 2,则将前四个数字都对 6 取模,a数组变成:[1, 3, 5, 4, 2]。
再选择前缀 [1, 2], x = 3 进行操作 1,则将前两个数字都加上 3,a 数组变成:[4, 6, 5, 4, 2]。
再选择前缀 [1, 1], x = 3 进行操作 1,则将前一个数字加上 3,a 数组变成 [7, 6, 5, 4, 2]。
此时 a 数组已经严格递减,操作次数为 3,在 n 以内则合法。
加载中...