第23章 智性恋

看着林星漪惊讶的表情,陈序随口回答道:

“这只是一个普通得不能再普通的小游戏,没什么大不了的。”

“但是这确实是个游戏,对吧?”

“对啊。”

“所以你确实在20分钟内写了个游戏出来?”

“这么说不准确.....这玩意儿我好久之前就写过了,现在只不过是在这里复制出来而已。”

“我就说......这起码还合理一点!”

林星漪长舒了一口气,那种看着陈序仿佛是在看一个怪物的眼神也终于缓和了几分。

不过即便如此,刚刚发生的事情还是让她难以置信。

20分钟哎!

一个游戏!

她不是没玩过游戏,甚至她上Pascal课的时候还跟着老师写过贪吃蛇的小游戏。

不过那时候,哪怕是一比一地跟着老师给的代码去写,她也整整花了三天的时间才实现。

相比之下,陈序的动作简直快到离谱----所以他到底是怎么学会的?

林星漪好奇地看着陈序,想开口问,但又觉得没有必要。

反正他的秘密已经够多了,再多一个也没什么关系吧?

“所以这个游戏怎么玩?”

林星漪开口问道。

“玩法很简单,9宫格,用方向键四向滑动,把相同的数字组合在一起变大,最后得出2048,就算是过关。”

“你先试一试玩一玩,想办法通关。”

“通关完以后,你再告诉我你的想法。”

“比如这个游戏是怎么实现的,需要用到什么功能。”

“你有Pascal基础,大概应该能理解。”

“理解原理了之后,我再具体跟你讲代码、讲算法。”

“这样一来,你就能初步理解算法的意义了。”

陈序一边说一边演示,林星漪很快搞清楚了玩法,开始自己上手。

陈序就坐在旁边看着,顺便拉开了一罐可乐。

第一轮,林星漪还没有完全掌握规律,操作了十几次便宣告失败。

第二轮,她最高拼到了1024,但从1024到2048不是只剩下一个数字,而是剩下了一半的工作量,最终她也没完成。

陈序一边喝着可乐一边指点她玩法,不过很显然,这游戏的随机性并不是那么好克服的,她最后甚至只拼到了512。

“这个很好玩!”

林星漪放下键盘,重重点头说道:

“虽然玩法很简单,但可重复性很强。”

“是因为里面有随机性的代码,但好像又不是完全随机......”

“所以到底是怎么做的?我现在能看代码吗?”

“我就算现在给你看,你也看不懂啊。”

陈序放下手里的可乐瓶,随后问道:

“回到原来的问题,如果让你来做这个游戏的话,你会怎么做?”

“只讲思路,不需要告诉我怎么用代码实现。”

从这一句话开始,陈序正式进入到了他承诺给林星漪的教学。

林星漪思索了片刻,回答道:

“首先要有一个代码,用来随机生成数字。”

“然后,要用一个代码,实现数字的左右移动,判断数字的位置。”

“还需要用代码实现数字的合并,这个我知道怎么做!”

“只需要两个函数,一个判断相邻数字是否相等,一个判断移动的方向。”

“比如在顶角上,就只需要判断两个数字、两个方向就好了!”

“其他的原理也差不多......哎,如果可以用中文编程就好了,我感觉我现在都能做!”

“你是否在寻找:易语言。”

陈序好笑地摊了摊手,但随即又点头道:

“你说的其实很准确----你比我想象中的要聪明。”

“其实你刚才说的那几句话,已经触及到了算法的根本。”

“很简单,就是怎么在兼顾算力、运算速度的条件下,完成一次计算。”

“来,现在我们来看代码,跳过前面的map生成部分,直接看合并部分。”

“你看,我们判断合并,实际上并没有用到你所说的位置判断,而是统一使用了同一个逻辑的四部分代码,每部分代码判断一个移动方向......”

陈序一行一行地解释代码,也解释了为什么要用这种看起来比较笨的方式去实现。

“原因很简单,你刚才考虑问题,是从开发者角度去考虑的。”

“对开发者来说,每次操作会有四种可能,上下左右。”

“但实际上,对玩家来说,他每次都只选择一个策略,上、下、左、右。”

“所以,在他们选择策略之后,代码会自动触发与之相关的逻辑部分,仅需要运算一次,就能获得结果。”

“这就是算法逻辑的核心,节省算力不一定需要靠多么复杂的函数,面向对象,也是一种思路......”

陈序侃侃而谈,林星漪频频点头。

但说着说着,陈序却发现,坐在他身边的林星漪已经开始有些走神了。

她的眼神不再锁定在屏幕上,而是时不时瞥向自己。

“你看我干啥?”

陈序莫名其妙道:

“听课啊,你还想不想参加NOIP了?”

“报告老师,想!”

林星漪嘿嘿一笑,开口道:

“陈序,你有没有发现,你给别人讲课的时候,有一种非常、非常、非常特别的变化。”

“......什么变化?”

“变帅了。”

林星漪一本正经地说道。

“我勒个智性恋啊......不是,我认真问一句,你不会觉得老张讲数学题的时候也风韵犹存吧?”

“......滚啊!”

林星漪狠狠瞪了陈序一样,继续说道:

“我是说真的啊!”

“之前总听他们说什么‘认真工作的男人最帅’,我还觉得挺恶心人的,现在看起来,好像也不是那么没有道理嘛。”

“哎,你说奇怪不奇怪,为什么别人没发现呢?”

“你看班里那几个男生,成绩稍微好一点的,都有好多女孩子喜欢。”

“你说,怎么到了你这,就没有人喜欢你了呢?”

“你老实说,你收到过情书没有?”

“我靠......情书.......”

陈序差点被这个古早的名词撞了一跟头,努力回忆好久,他才终于回答道:

“还真没有。”

“明珠蒙尘啊!”

林星漪痛心疾首。

“不过,好像谢染洁已经开始对你有那么点意思了。”

“说不定你俩最后能......”

“你可快闭嘴吧。”

陈序打断了林星漪没头没脑的发言,看了一眼电脑上的时间,开口说道:

“从明天开始,你就要正式开始NOIP学习了。”

“一个多月的时间,你要先掌握C++的基础,然后还要大量练习算法题。”

“怎么说呢.......重在参与,但也不一定完全没有奇迹。”

“走吧,9点,差不多了。”

“回家!”

“好嘞!”

林星漪乖巧地收拾好书包,两人并肩走出网吧。

陈序突然想起什么,回头看向林星漪,开口问道:

“所以你说的那个理由,到底是什么?”

上一章目录+书架下一章