bzoj1228: [SDOI2009]E&D
2017-04-13 08:28
260 查看
传送门
SG函数
首先给sg函数打个表……发现0的分布好有规律
然后又发现1好像也挺规则的,一堆小三角型
最后发现每个数都是类似的三角形
发现如下规律:
0出现条件
i,j均%2=1
1出现条件
i%4=1,2
j%4=1,2
2出现条件
i,j%8=1,2,3,4
……
自己可以yy出得到sg(i,j)=k的必要条件
(i-1)%2k+1 < 2k且(j-1)%2k+1 < 2k
但是可能这对数满足很多条件,暴力找最小就可以了。
然后就愉快的水过了。
SG函数
首先给sg函数打个表……发现0的分布好有规律
然后又发现1好像也挺规则的,一堆小三角型
最后发现每个数都是类似的三角形
发现如下规律:
0出现条件
i,j均%2=1
1出现条件
i%4=1,2
j%4=1,2
2出现条件
i,j%8=1,2,3,4
……
自己可以yy出得到sg(i,j)=k的必要条件
(i-1)%2k+1 < 2k且(j-1)%2k+1 < 2k
但是可能这对数满足很多条件,暴力找最小就可以了。
然后就愉快的水过了。
var cases,test,n,i:longint; ans,a,b:int64; function sg(x,y:int64):int64; var tmp,i:int64; begin tmp:=2; i:=0; while ((x-1) mod tmp>=tmp/2) or ((y-1) mod tmp>=tmp/2) do begin inc(i); tmp:=tmp*2; end; exit(i); end; begin read(cases); for test:=1 to cases do begin read(n); n:=n div 2; ans:=0; for i:=1 to n do begin read(a,b); ans:=ans xor sg(a,b); end; if (ans<>0) then writeln('YES') else writeln('NO'); end; end.
相关文章推荐
- bzoj 1228: [SDOI2009]E&D 阿达马矩阵
- BZOJ 1228: [SDOI2009]E&D 博弈,SG函数,组合游戏
- BZOJ1228 [SDOI2009]E&D
- bzoj 1228 [SDOI2009]E&D(sg函数,找规律)
- [BZOJ1228][[SDOI2009]E&D(SG函数+找规律)
- bzoj1228 [SDOI2009]E&D
- bzoj1228 [SDOI2009]E&D 找规律
- Bzoj1228 [SDOI2009]E&D
- 【SDOI2009】bzoj1228 E&D
- bzoj1228 [SDOI2009]E&D
- [BZOJ]1228: [SDOI2009]E&D 博弈SG
- bzoj1228 [SDOI2009]E&D(博弈【规律)
- BZOJ 1228: [SDOI2009]E&D(SG定理)
- BZOJ 3438 小M的作物 & BZOJ 1877 [SDOI2009]晨跑
- BZOJ:4820: [Sdoi2017]硬币游戏&&BZOJ:1444: [Jsoi2009]有趣的游戏(高斯消元求概率)
- bzoj 1877: [SDOI2009]晨跑
- BZOJ_P1228 [SDOI2009]E&D(博弈+SG函数+打表)
- [BZOJ 1875] SDOI 2009 HH去散步 · 矩阵乘法
- bzoj 1877: [SDOI2009]晨跑
- 【BZOJ】【P1880】【Sdoi2009】【Elaxia的路线】【dijk】