给出n个数第i个数为\(a_i\),两个人轮流操作,每次操作可以选择一个数\(a_i\),把\(a_i\)的约数除它自己加入游戏然后删掉一个约数,再删去\(a_i\)再选择,以此操作当一个人不能进行操作时,则该人游戏失败询问先手是否能够必胜,\(1<=n<=100,1<=a_i<=1000\)
注意到这是icg,于是自然想到sg函数不难发现数是一个有向图游戏,而一个有向图游戏产苼的不同的约数堆是不同的局面,而局面约数堆的一个数又是一个有向图游戏于是我们对于一个局面是否能够胜利,取这个局面的有姠图游戏的和而对于一个约数(即有向图游戏)的sg函数值,只要把它所产生的每一个局面的sg函数值取mex操作即可其他照sg函数的套路即可。