今天做编程题时学到了一招。当遇到常理上来说需要Hash的题目,而又要求不能使用额外的空间时,可以用自身输入的数组来Hash。因为有些题目只要求找出“缺失的元素”,“出现一次的元素”或者“重复出现两次的元素”,并把元素大小限制在 [1,N] 之间,这样,用自身数组元素的正负可以来进行Hash。
还遇到了一道求解一种游戏是否能够获胜的问题。这种问题在《编程之美》中看到过。因为给出一种开局一定可以知道谁能够胜,那么其实只需要求解两种状态:一定会输的 β 状态,以及可以一步到达 β 状态的 α 状态。这道题目是用记忆化搜索来寻找答案,用bitset可以表示游戏的某种状态。这道题目因为以前看到过类似的,所以自己解出来了,还是比较高兴的。
晚上看了一道之前做过的题目,也顺利地重复做出来了,可见之前的印象还是比较深刻的。
今天白天去看了《生化危机》。这部电影的无脑程度和没营养对白真是让我深感钱花的不值。
走了一天的路,走了2万多步,我也有些筋疲力尽了。