返回021. 白书  算法青春首页

关灯 护眼     字体:

上一章 目录 下一页

最新网址:m.92yanqing.com

几个月学的知识点在脑海中翻涌,郭晓川努力寻找其中千丝万缕的联繫,试图与剩下的题目建立某种微妙的匹配。

再看排名,前面 9个人里,有人多过了一道题,这题很像是动態规划,但之前稀里糊涂练过的两题,根本提取不出任何能带来头绪的经验。

还剩一小时,剩下的三题中只能押注一题,没半点容错空间了。

所有题都已读完,只有一道无人碰过的题隱约有些思路——搜索!

不管了,写!

提交,tle(运行超时)。

优化!

虽然结果是 tle,运行时间顶格显示为题目的 2秒运行时限,但郭晓川在本地模擬了一组最大的数据,似乎並没有比 2秒慢很多。

继续优化!他下定决心。

集训时尹学长推荐过 poj 1011,是一道穷举所有可能將小棍子拼成相同长度棍子的题,他说那道题虽然理论复杂度不算是个“正確的题”,却能练优化思路,也就是“剪枝”——用各种办法排除搜索时没必要的分支。

用为数不多的搜索优化经验,让这份代码快一些,再快一些。

剪!——tle。

再剪!——还是 tle。

接著剪!——依旧 tle。

比赛时间还剩 20分钟,郭晓川的排名掉到了第 12。

还有什么遗漏的?他开始从头梳理题目条件。

poj 1011断断续续憋了 3天,没搜题解,硬是自己卡出了 ac。

眼下这个题一定也可以的!一定!

排序、调换顺序、预处理、翻转逻辑……该试的都试了,还差什么?还差什么?

好像就差一点点!也许是几百毫秒,也许是几十毫秒!

还剩 10分钟。

再一次翻遍了代码中每条逻辑。

还剩 5分钟。

进不了校队了吗?努力都白费了吗?

念头冒出来,郭晓川猛地摇头。不行!再想!

视线飞速扫著代码。

`printf`?

`while`?

`dfs`?

`break`?

`scanf`?

`scanf`!!!

编译器的书里对`scanf`缓存区的討论突然衝进脑海。

由於维护內部状態及格式解析的开销,它的速度比直接获取字符的`getchar()`慢,如果先用`getchar()`把输入读成字符,再一次性转为数字呢?

快没时间了,写!手速推到极限。

最后 2分钟,郭晓川提交了修改后的代码。

“pending”(等待评测)的状態十分短暂,却又像一个世纪那么长。

突然状態一闪,1930epted”(通过),卡在时限內 ac!

郭晓川不受控制地喊了一声:“cao!”引得周围几人侧目,彭峰也被嚇了一跳。

没有封榜的排名仍在实时更新,郭晓川的名字跳到了第 5。

最后的时间,榜单没有发生新的变化,比赛结束。

如同被抽走了所有力气,他整个人瘫在座位上,弓著背盯著屏幕,一动不动。

机房比以往的比赛结束更躁动一些,大多数人纷纷起身或离开座位,有的已经在收拾资料准备离开,有的三三两两围在一起,打开了四次个人赛的排名窗口指指点点。

眼前的排名页显示:

1.苏明

2.曹象

3.刘建

4.吕良

5.郭晓川

……

本章未完,点击下一页继续阅读。(1 / 2)

『加入书签,方便阅读』

上一章 目录 下一页