#105. 魔法珠

魔法珠

Freda和rainbow是超自然之界学校(Preternatural Kingdom University,简称PKU)魔法学院的学生。

为了展示新学的魔法,他们决定进行一场对弈。

起初Freda面前有n堆魔法珠,其中第i堆有a_ia\_i颗。

Freda和rainbow可以轮流进行以下操作:

1.选择n堆中魔法珠数量大于1的任意一堆。记该堆魔法珠的数量为p,p有b_1b_2b_mb\_1、b\_2……b\_m这m个小于p的约数。
2.施展魔法把这一堆魔法珠变成m堆,每堆各有b_1b_2b_mb\_1、b\_2……b\_m颗魔法珠。
3.选择这m堆中的一堆魔法珠,施展魔法令其消失。

注意一次操作过后,魔法珠的堆数会增加m-2,各堆中魔法珠数量的总和可能会发生变化。

当轮到某人操作时,如果每堆中魔法珠的数量均为1,那么他就输了。

Freda和rainbow都采取最好的策略,从Freda开始。

请你预测一下,谁能获胜呢?

输入格式

输入包含多组测试数据。

每组数据的第一行包含一个整数n。

第二行包含n个整数,第i个整数表示第i堆的魔法珠数量a_ia\_i

输出格式

对于每组数据,在两人均采取最佳策略的前提下,若Freda能获胜,输出freda;若Rainbow能获胜,输出rainbow。

每个结果占一行。

数据范围

1n1001 \le n \le 100,
1a_i10001 \le a\_i \le 1000

输入样例:

3
2 2 2
3
1 3 5

输出样例:

freda
rainbow

来源

  • 《算法竞赛进阶指南》
  • acwing 可能含有视频讲解