#P11056. Fire and Big

Fire and Big

题目描述

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

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

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

  • kk 是 nn 的倍数。
  • 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 m≤m\le
11 ≤5×105\le 5\times 10^5 11
2∼32\sim 3 ≤5\le 5 55
4∼64\sim 6 ≤105\le 10^5 nn
7∼87\sim 8 =2=2 10910^9
9∼119\sim 11 ≤5\le 5
12∼1412\sim 14 ≤103\le 10^3
15∼1715\sim 17 ≤105\le 10^5
18∼2018\sim 20 ≤5×105\le 5\times 10^5

对于所有数据,保证 1≤T,n≤5×1051\le T,n\le 5\times 10^5,1≤m≤1091\le m\le 10^9。

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