第一行包含一个整数(
)~--- 测试数据的组数。
对于每组测试数据:
第一行包含两个整数,
(
,
) --- 素材的个数以及炼金釜的承受能力
。
第二行包含一个长度为的序列
,
,
,
(
) --- 每个素材的潜力值。要注意这些素材是按输入顺序围成一圈。
数据保证
对于每组测试数据:如果不能避免炼金釜爆炸,则输出。
否则输出行:
第一行含一个整数(
),表示操作次数。
接下来行,每行输出选择的两个下标
,
(
), 表示要交换当前的第
个素材和第
个素材。
如果有多种方案,输出任意一种即可。注意:不需要使操作次数最少。