2014网络赛 西安赛区

来源:互联网 发布:bluetooth网络连接 编辑:程序博客网 时间:2024/04/29 05:31

本来这场比赛时信心满满的。比完之后真的说不出的痛啊。

比赛开始之后,我觉得1005这个博弈挺有意思的,Whai觉得1001是个水题,于是他和Booky开始做这个题,我一个人想这个博弈题、所以1001我也没怎么看就A了。

1005的博弈,经过一番思考的之后,我觉得有点像普通的Nim博弈。全部异或就行。我按照这个假设,假设先手必胜,那他拿完这堆 和把这堆分成两个1完全等效,也就是分解操作其实没起到作用。若先手目前是必输状态,那  异或和sum==0,这样的话,拿掉一个再分成两堆,留给对手的一定是一个必胜态,于是我就朴素的开始写了,交上去A了。...


接下来看 1009....1009我们想了好久,。想直接推出公式来 求解答案。最后公式用log 的矩阵乘法就可以了,。但是始终没能想到构造10*10的矩阵。哎。

1008是我们1个半小时开始做的。  经过一番思考之后,我发现这个题目事实上要构造的二进制应该全是1、比如:11,111,1111.而对于1010这样的数,那一定有一个101与之对应,那也就是说101与1010对应,而且  能保证每个数都能配对,毕竟是N个数和N个数配对。这样想的话,我从大往小扫,一遍就能出答案了。

1006是一个比较水的搜索题,看交大的代码我觉得map真的是非常方便的东西啊。虽然开一个bool数组也行。。但是Whai这题怎么写怎么Tle,最后Whai写了一个O(1)的算法,简直叼!不过因为这题。时间耗费了很多,罚时也很多了。。。哎。     Whai  超时的原因是每次把  这个状态映射到整形,这样的话每次搜索有720次转换这个整形。而不是只搜索了24个状态。。。。


比赛就这么结束了。我对于1005确实没想法,我尝试从纯粹数学的角度来解决,但是却是失败了。考虑太细反而注意的事情更多。      这个时候如果我早点注意到1003放弃1005的话,说不定就不是这个样子了。西安,可能无缘了。。。之后真的要加油了!

0 0
原创粉丝点击