#1032. 记忆里的那个深秋

记忆里的那个深秋

题目背景

“重生之我要让MIT看看谁是牢大!”—— 仲夏

“警告!警告!警告!”

“塞下秋来风景异,仲夏出题请注意”

亲爱的同学: 恭喜你! 你作为仲夏指点江山的第一批队员,披荆斩棘,顺利参加仲夏举办的第一届仲夏杯大赛。你幻想着,要是这一刻我也可以和仲夏一样厉害就好了。 突然间,天空暗淡,电闪雷鸣,仲夏的声音在你的耳畔响起:“少年人,你想获得神的力量吗?” 再次睁开双眼,你发现自己英俊潇洒,风流倜傥,玉树临风,风度翩翩,气宇轩昂...... 你心想:“这不是190冷白皮宇宙无敌史上最强acmer——仲夏的身体吗?” 刹那间,你的脑海里传来了温柔的气泡音:“少年,现在,你就是这场比赛的创始人。”

题目描述

现在仲夏杯大赛正式开始,一共有 n 位同学参加仲夏杯大赛。第 i 位同学的 Midsummerforces 评级为 ai(同学们的实力不同,因此同学们的评级全部不同)。同学们最初处于 i 的位置。仲夏杯大赛由 n1 个仲夏杯选拔赛组成,规则如下所示:

  • 第一场比赛是在位置 1 的同学和位置 2 的同学之间。
  • 随后,每场仲夏杯选拔赛 i 在位置 i+1 的同学和仲夏杯选拔赛 i1 的获胜者之间。
  • 在每场仲夏杯选拔赛中, Midsummerforces 评级较高的同学获胜并进入下一场比赛。

现在,你的本体是同学 k 。对你来说,赢得比赛并不重要。你希望你的本体k在尽可能多的比赛中获胜。因为此时此刻你就是仲夏,你可以将你的本体与另一位亲爱的小同学交换一次位置,或者什么都不做。请问你的本体最多可以胜利几场? (注:赢得胜利场数最多的可获得仲夏的神秘奖励)

输入格式

包含多组数据​。第一行为数据组数 t1nt×104 1 \leq n \leq t \times 10^4 )。 每组数据的第一行包含两个整数 nk 表示同学的数量和你的本体的位置(1n1×105 1 \leq n \leq 1 \times 10^5 1kn 1 \leq k \leq n )。

第二行包含 n 个整数 a1 a_1a2 a_2an a_n 表示每个同学的 Midsummerforces 评级( 1ai1×109 1 \leq a_i \leq 1 \times 10^9 )。保证 ai a_i 的成对不同。

保证所有数据的 n 之和不超过 105 10^5 。 .

输出格式

对于每个测试用例,打印一个整数:如果选择最佳交换(或什么都不做),你的本体 k 所能取得的最大胜利数。

样例

3
6 1
12 10 14 11 8 3
6 5
7 2 727 10 12 13
2 2
1000000000 1
1
2
0

提示

在第一组数据中,应该什么都不做。设 a 是原始顺序中同学的 Midsummerforces 评级(你的本体评级会加粗)。

  • 最初,a=[12,10,14,11,8,3] 。
  • 你的本体与 Midsummerforces 评级为 10 的同学对战并获胜。现在 a=[12,14,11,8,3]。
  • 你的本体与 Midsummerforces 评级为 14 的同学对战,输掉了比赛。
  • 你的本体赢得了 1 场比赛。

在第二组数据中,应该将同学交换到位置 3 。然后,设 a 是交换后顺序中每位同学的 Midsummerforces 评级。

  • 最初,a=[7,2,12,10,727,13] .
  • Midsummerforces 评级为 7 的同学与 Midsummerforces 评级为 2 的同学对战并获胜。现在 a=[7,12,10,727,13] .
  • Midsummerforces 评级为 7 的同学与你的本体对战,你的本体获胜。a=[12,10,727,13] .
  • 你的本体与 Midsummerforces 评级为 10 的同学对战并获胜。现在 a=[12,727,13] .
  • 你的本体与 Midsummerforces 评级为 727 的同学对战,输掉了比赛。

你的本体赢得了 2 场比赛。

限制

每次测试时间限制:1秒

每次测试的内存限制:256 MB