#451. 比划比划?

比划比划?

问题描述

小赖给出了一个长度为 nn 的数组 aa , 包含 a1,a2,...an{a_1, a_2, ... a_n},以及一个数 qq,表示接下来有 qq 轮比拼。

在每一轮比拼中,小赖会给出两个正整数 llrr,保证 1l<rn1 \le l < r \le n,这两个数表示数组 aa 的一个区间 [l,r][l, r] (包括 ala_lara_r)。

小谢和小石需要在该区间内选择一个数进行比拼,谁选择的数更大谁就获胜,如果选择的数的值相同,则为平局。

然而,小谢总是能迅速找到区间[l, r]内的最大值 ai,i[l,r]a_i , i ∈ [l, r] 作为自己的数,而一旦小谢选了 aia_i,小石就不能再选择 aia_i 了。

为了增加胜利的机会,小石插入了U盘,启动了特殊软件:现在小石可以将原区间 [l,r][l, r] 变为新区间 [L,R][L, R] (包括 aLa_LaRa_R),其中 LL , RR 需满足式子: lr=LRl * r = L * R, 且新区间[L,R][L, R] 依旧满足 1L<Rn1 \le L < R \le n ; 然后,小石会选择新区间 [L,R][L, R] 内的最大值作为自己的数(除了小谢选择过的数 aia_i) 。当然了,小石会找到最好的新区间 [L,R][L, R] ,使得他能选到的数值最大。

对于每轮比拼,数值更大的人为胜者,另一方为败者,如果小石获胜,请输出"S is winner d",如果小谢获胜,请输出"X is winner d",其中 d 表示胜者的数值减去败者的数值的值。特别的,如果两人所得数值相同,则为平局,请输出"Tie"。

输入格式

第一行两个正整数 nn , qq , 分别表示数组的长度和比拼的轮数。

第二行给出 nn 个数, 第 ii 个数代表 aia_i

接下来的 qq 行,每行给出两个正整数:ll , rr ,表示给出的区间的左右端点。

输出格式

对于给出的 qq 轮比拼 ,每行分别输出对应的结果:如果小石获胜,请输出"S is winner d",如果小谢获胜,请输出"X is winner d",其中d表示胜者的数字减去败者的数字的值。如果是平局,请输出"Tie"。

输入样例

6 3
1 3 2 3 4 5
1 4
3 4
4 5

输出样例

Tie
S is winner 2
X is winner 1

评测数据规模

对于所有评测数据: 1n,ai,q1051 \le n, a_i, q \le 10^5 , 1l<rn1 \le l < r \le n

说明

样例解释:

第一轮,虽然小石无法找到更好的满足条件的新区间,但是可以选择到和小谢一样的 3,此时为平局,输出 "Tie"

第二轮,小谢先选择了区间 [3, 4] 中的最大值 a4=3a_4 = 3 , 此时小石可以选择新区间 [2, 6] : 3 * 4 = 2 * 6 = 12 且 1<2<661 < 2 < 6 \le 6 , 显然该区间满足要求条件 , 然后小石选择该区间内的最大值(小谢选过的数aia_i不可选) : a6=5a_6 = 5 , 此时: 5>3,53=25 > 3 , 5 - 3 = 2 , 因此输出 "S is winner 2"

第三轮, 小谢先选择了区间 [4, 5] 中的最大值 a5=4a_5 = 4 , 此时小石没有更好的满足条件的新区间 , 最后也只能选择 a4=3a_4 = 3 , 此时 4>3,43=14 > 3 , 4 - 3 = 1 , 因此输出 "X is winner 1"