luogu#P11056. Fire and Big

Fire and Big

题目描述

小 F 要和其他人玩游戏,但他不想输,所以来找你帮他研究策略。

mm 个石子,小 F 和小 B 轮流取石子,小 F 先开始取,不能取的人输。

给定正整数 nn,每次取石子的个数 kkkk 是正整数) 必须满足如下两个条件之一

  • kknn 的倍数。
  • kk<n<n 的完全平方数。

他们要玩 TT 局游戏,不过每一局游戏的 nn 不变,只有石子个数 mm 会变。

对于每一局,假设两人足够聪明,问谁有必胜策略。

输入格式

第一行,两个正整数 T,nT,n

第二行,TT 个正整数 mm,表示每一局游戏的石子个数。

输出格式

输出一行一个长为 TT 的字符串,每个字符为 F 或者 B,分别表示这一局游戏先手必胜与后手必胜。

5 2
1 2 3 4 5
FFBFF

提示

样例解释

以下将说明当 n=2,m=3n = 2, m = 3 时,后手必胜。对先手第一次取走的石子的数量进行讨论:

  • 若先手取走 11 个石子,则后手可以取完剩下 22 个石子;
  • 若先手取走 22 个石子,则后手可以取完剩下 11 个石子。

因此无论如何,后手总会赢得胜利。

数据范围

测试点编号 nn T,mT,m\le
11 5×105\le 5\times 10^5 11
232\sim 3 5\le 5 55
464\sim 6 105\le 10^5 nn
787\sim 8 =2=2 10910^9
9119\sim 11 5\le 5
121412\sim 14 103\le 10^3
151715\sim 17 105\le 10^5
182018\sim 20 5×105\le 5\times 10^5

对于所有数据,保证 1T,n5×1051\le T,n\le 5\times 10^51m1091\le m\le 10^9

对于奇数编号测试点,内存限制为 512 MB512\ \text{MB};对于偶数编号测试点,内存限制为 64 MB64\ \text{MB}