题目大意: 可以从某一堆中取任意个数,也可把一堆分成两个不为0的堆,直到某一方无法操作为输 因为是nim博弈,所以只要考虑一堆时候的sg值,把所有堆的sg值异或即可 很显然这里 0 是一个终止态 sg[0]=0; sg[1]=1 ; 2 的时候可分为 0 , 1 , (1,1) 3种情况,sg值分别为 0,1,0,所以sg[2]=2 3的时候可分为0,1,2,(1,2),sg值分别为0,1,2,3,所以sg[3]=4 而4的时候sg[4]=3 多试验可得sg(4k)=4k-1;sg(4k+1)=…