囧仙 的博客

囧仙 的博客

大码农题做题体验

posted on 2020-10-20 23:09:51 | under 杂谈 |

前言

  • 这篇文章主要记录了某位囧仙中之人写大模拟题的做题感受。这里的大模拟题主要来自码农题题单,感谢题单作者的整理。

  • 蓝题以下的码农题不够码农,可能并不会怎么去做。

  • 因为这篇文章主要是讲了作者的做题感受,所以并不会很详细地讲述具体题解。仅供 $\stackrel{\text{偷税}}{\text{愉悦}}$ 。

  • 本文会对做过的题目进行难度的个人评判,分为 $5$ 级,等级越高说明越难。不过评分仅供参考。

本贴将会持续更新

更新

  • $\frak{upd.2020.10.20}$ 写下了这篇文章,并写了三条记录。

  • $\frak{upd.2020.10.26}$ 第一次更新了文章,新增了两条记录。

正文

[NOI2005]智慧珠游戏 达成时间 $\small\texttt{2020-05-24 20:08:19}$

体验

嘛,当时看题的时候还是黑题,等做完了,发现它降成紫题了(悲)。然而并没有改变它的毒瘤本性。

$$\textbf{“小时候你玩智慧珠,长大了智慧珠玩你”}$$

——来自题解区第一篇题解

虽然说是码农题,但意外的简单。做法和隔壁的靶形数独差不多。虽然程序还是超时了好几次,然后用了点奇技淫巧过了。主要难写的是珠子的输入。题解区的题解大多花了巨大的码量去输入珠子。

但我寻思直接压缩一下不就完事了……

后来嘛,用 $2\rm KB$ 不到的代码就直接 $\rm AC$ 了。顺便写了篇题解,通过私信管理员丢到题解区了。

评价

  • 码量: $\texttt{II}$ 级。虽然很多题解码量巨大,但只要掌握了方法,轻轻松松敲完……某种程度上这题算不上码农题。

  • 思维: $\texttt{III}$ 级。如果你直接用爆搜的话,那就没啥思维难度。不过考虑到存储珠子需要一定的思维,我认为这题思维难度还不错。如果你追求速度,可以考虑使用 $\text{DLX}$ 解题。

  • 调试: $\texttt{II}$ 级。因为码量低,所以调试起来自然比较方便。

  • 总评: $\texttt{III}$ 级。是一道不错的小清新码农题,建议敲完靶型数独来看看。

[THUPC2019]鸭棋 达成时间 $\small \texttt{2020-06-03 23:49:41}$

体验

题面很长,但棋子间的操作相互独立,其实分成若干个子问题的话挺容易写的。题目只要求判断走棋是否合法,因此相当容易。

听说出题人做了个鸭棋的小游戏出来, $\%\%\%$ 出题人。

主要就是加上各种各样的特判,其实没啥内容,纯粹拼的码力。样例给的很良心,基本上大多数错误都能查得出来。由于题意简单,因此比较容易调试,是一道良心题。

评价

  • 码量: $\texttt{III}$ 级。我当时写了 $\rm 3.5+KB$ ,其实还可以进一步压缩。码量大于智障珠,但意外地好写。

  • 思维: $\texttt{I}$ 级。普及组选手都能想到的思路,随便写写就完事了。

  • 调试: $\texttt{II}$ 级。样例相当给力,很多错误也能肉眼看出来。各个规则互相独立,不会导致牵一发而动全身。

  • 总评: $\texttt{III}$ 级。这题主要难就难在巨大的码量,但除此之外没啥难度了。

P2482 [SDOI2010]猪国杀 达成时间 $\small\texttt{2020-10-18 23:53:50}$

体验

经典 $\rm ao$ 题,当我还是初学者的时候就久仰大名了。可惜当时还是黑题,现在降为紫题了(悲)。但这并不妨碍这条题目的毒瘤本性。

好像题面被人规范过了,看起来比远古时期的题面清爽多了。由于这个屑没有玩过三国杀,导致他理解了相当长时间题面(悲)。

其实这题主要就是各种各样的细节,令人恶心的细节,相当的恶心。比如说,你得在各种时候特判是否有玩家死亡,特判每张锦囊牌发动前有没有玩家打出无懈可击,有没有牌的使用使得你需要重新枚举一遍玩家的手牌……

数据相当的水,复杂度飞上天际的算法都能通过,可见出题人的良心(迫真)。

调试起来极为痛苦。由于各种规则交织在一起,导致盯着一面数据看了半天……做题体验极差。我记得我因为忘记使用一张牌后,可能要重新扫描手牌,导致调了一晚上……

  • 码量: $\texttt{III}$ 级。我的初稿写了 $\rm 5+KB$ ,虽然后来优化到了 $\rm 2.5+KB$ ,但依然相当不好写。

  • 思维: $\texttt{III}$ 级。需要选手想出一套可行的方案并实现,实际上还是挺有难度的。

  • 调试: $\texttt{IV}$ 级。地狱一般的调试,相当磨砺人的信念。

  • 总评: $\texttt{IV}$ 级。就光着做题体验,就足够评这么高的分了……及其难受的一段经历。

P4911 河童重工的计算机 达成时间 $\small\texttt{2020-10-25 12:15:42}$

体验

是条以车万为背景的题,这是好的。

我记得好久之前就看过这条题目了。但因为读不懂 $\verb!@%XXX!$ 地址的含义,导致这题搁置了好久()如今重新回顾,居然就看懂了。

其实这题看上去吓人,但操作还算比较简单,因为每个指令都以分号结尾。高度格式化的输入数据也使得操作起来很容易。出题人写的标算更加可读,也导致码量膨胀。

然而为了追求输出速度,我用了快速输出,结果在 $\sout{-2147483648}$ 转为正数时溢出了,非常谔谔

体验不算糟糕,就是 $\rm PDF$ 翻了一遍又一遍挺麻烦的。

  • 码量: $\texttt{IV}$ 级。绝对可以算得上是大码量题了。像我这种压行壬,居然还写了 $100$ 行,共 $\text{4.70KB}$ 的代码,毒瘤出题人恐怖如斯。

  • 思维: $\texttt{III}$ 级。要求选手设计一套可行的汇编程序解释器,思维其实并不算太难。大概中等水平的样子。

  • 调试: $\texttt{III}$ 级。调试还好,主要是因为你能在出题人的主页里下到所有数据。但由于码量巨大,实际调试也挺难受的。

  • 总评: $\texttt{IV}$ 级。走向未来程序改的第一步,可惜数据有点水了。

P5756 [NOI2000]程序分析器 达成时间 $\small\texttt{2020-10-25 23:56:20}$

体验

刚做完河童重工的计算机,就来看这道题了。其实是因为隔壁 $\sout{\text{CYaRon!}}$ 语调不动了。

题面描述的挺格式化的。要求选手支持的操作也挺少,没啥难点。总体体验还行。

然而并不是。因为我太菜了,在判断 $\rm END$ 、 $\rm IF$ 和 $\rm GO$ 语句时,直接判断了第一个字母是否符合要求。然后我忘了变量名称也有可能是 $E,I,G$ ,然后调了半天,心态爆炸。

然后我看到 假设该系统能处理任意大小的整数,而不会发生溢出。 ,就以为要用高精度,调了半天,再次心态爆炸。

明明是一道水题,为什么我会这么菜呢(悲)

  • 码量: $\texttt{I}$ 级。不会吧不会吧,真会有人把这题看作码农题吗? 要求支持的操作相当少,变量相当简单,使得码量也很小。才 $\text{1.24KB}$ 就写完了,根本不过瘾啊(恼)

  • 思维: $\texttt{II}$ 级。并没有什么难的,只要熟练运用 $\texttt{scanf}$ 就能完成所有读入了。

  • 调试: $\texttt{II}$ 级。数据简单,也容易调试。

  • 总评: $\texttt{II}$ 级。非常简单的一条题目。由于截止到目前该题尚未评分,我这边给出的参考评分是绿题。毕竟,这题某种程度上比隔壁的时间复杂度简单一些。

码农题体验,堂堂连载中()

后记

  • 虽然每条记录看上去都比较简短,但很多题目做起来其实挺累的()少的也有一个小时。

  • 其实这篇文章有点像是码农题推荐?读者也可以自己去爆切码农题。相信做完之后你会有不用的感受的。

  • 读到这里了,给个赞,或者留个评论,好不好 $\text{QAQ}$ 。