## 总览 一共有 $10,903$ 个文件夹,$8,481$ 个文件,这代表着有 $2,422$ 个文件夹里面没有源代码文件。最大选手文件夹编号为 HN-J02450,但只有 $2,289$ 个选手文件夹,至少 $161$ 名选手没有代码。 获得最长代码的是 HN-J00767 的 poker.cpp(并且 ta 没有开子文件夹),ta 的代码长度达到了 $26.6$ M。远看过去祥和,但是…… ![[csp2024jhn23.png#pic_center]] ![[csp2024jhn24.png#pic_center]] ![[csp2024jhn25.png#pic_center]] ## 细节 ### 头文件 共有 $9,081$ 个 `#include`,其中 $7,878$ 个文件包含了万能头,当中的选手 HN-J00015 使用了独树一帜的神奇操作。 ![[csp2024jhn3.png#pic_center]] ### CCF 共有 $15$ 个文件出现了 CCF。出现 I love CCF 字眼的考号为:HN-J00654、HN-J00865、HN-J01116、HN-J01471、HN-J01639、HN-J01639、HN-J01639、HN-J01991,其中 HN-J00865 将 I love CCF 重复了十遍,运用反复的写作手法写出了作者对 CCF 的喜爱。 ![[csp2024jhn2.png#pic_center]] 值得注意的是,没有一个文件出现了 fxxk/sxxt 的字眼,看来本届考生相对来说较为文明。没有在代码中发现表白的,看来选手们对 CCF 的喜爱远胜于其他人。 --- 好家伙全字匹配忘关了,关掉还是有文明人的。HN-J00078 定义了宏常量 sbccf,HN-J00190 定义了数组 bydccf。 ![[csp2024jhn26.png#pic_center]] ![[csp2024jhn27.png#pic_center]] HN-J01550 还在代码内阐述了事实。 ![[csp2024jhn28.png#pic_center]] ### y1 $108$ 个文件出现了 y1 作为变量名,向它们致敬。 ![[csp2024jhn21.png#pic_center]] ### china 喜报!HN-J00943 将 chain 写成了 china,血的教训。 ![[csp2024jhn22.png#pic_center]] ### 文件读写 考号为 HN-J00151、HN-J00283、HN-J00318、HN-J00447、HN-J00492、HN-J0073、HN-J00810、HN-J00922、HN-J00954、HN-J01015、HN-J01015、HN-J01127、HN-J01142、HN-J01151、HN-J01299、HN-J01345、HN-J01471、HN-J01690、HN-J01768、HN-J01774、HN-J01819、HN-J01990、HN-J02142、HN-J02191、HN-J02292、HN-J02317、HN-J02362 等的选手的输出文件后缀均为 .ans,这就是不仔细看比赛注意事项的后果。 ![[csp2024jhn1.png#pic_center]] 已知 $9$ 名选手将后缀名 .cpp 放到了子文件夹的名字的里面。 ### 数据类型 只有 $1,976$ 个文件使用了 int,但是总数量达到了 $20,006$ 个。有 $667$ 个文件使用了 signed 替代 int。共有 $1,847$ 个文件使用了 long long,有 $406$ 个文件使用了 ll 或 LL 进行替代。 $3,033$ 个文件使用了 char,$2,110$ 个文件使用了 string,$281$ 个文件使用了 [[vector]],set 存在于 $103$ 个文件当中,没有选手使用 multiset,只有 $7$ 个文件使用了 unordered_set,[[map]] 存在于 $516$ 个文件当中,没有选手使用 multimap,unordered_map 倒是在 $26$ 个文件中出现,只有 HN-J00862 和 HN-J02131 使用了 [[deque]],没有人使用 list 替代 deque,没有人使用 basic_string 替代 vector。 只有 $2$ 位巨佬:HN-J00176、HN-J00999 使用了冷门的 array。 ![[csp2024jhn4.png#pic_center]] ### 输入输出 $3,127$ 个文件使用了 cin,$2,249$ 个文件使用了 cout;$601$ 个文件使用了 cout,$535$ 个文件使用了 printf。单从数量上来看,输入输出流远胜于标准 IO。 $150$ 个文件定义了 read 函数,应该均为手写快读的;但是只有 $46$ 个文件定义了 write,看来大部分选手希望更快的输入而不是输出。 $8,171$ 个文件使用了 freopen 作为文件读写,只有 $56$ 份代码使用了 i/ofstream。这证明 freopen 还是广大竞赛选手进行文件读写的方式。 但是约莫 $226$ 个文件将 freopen 注释了。。。 ![[csp2024jhn6.png#pic_center]] ### 诈骗 只有一位选手 HN-J02066 使用了 Never Gonna Give You Up 施行诈骗。 ![[csp2024jhn7.png#pic_center]] ### 注释 $1,414$ 个文件使用了单行注释,只有 $334$ 个文件使用了多行注释。 ### AFO 有 $7$ 个文件里面出现了 AFO 的字眼,祝福 ta 们。 ![[csp2024jhn8.png#pic_center]] ![[csp2024jhn31.png#pic_center]] HN-J02066 的代码内述说了一个悲伤的故事。 ![[csp2024jhn9.png#pic_center]] ### 114514 有 $57$ 份代码使用了 $114,514$ 家族的成员。 ![[csp2024jhn19.png#pic_center]] ### 3.1415926 HN-J01349 在自己的每一份代码里面都定义了常量 pi,值为 $\pi$。最长的达到了小数点后 $250$ 位。他的代码中还有许多鬼畜。 ![[csp2024jhn20.png#pic_center]] ### 文明用语 HN-J01379 在代码里面使用了 Cnm 来进行调试。HN-J00322 和 HN-J01104 两位选手则是将其用为了变量名(也有可能是求组合数)。 ![[csp2024jhn12.png#pic_center]] ![[csp2024jhn13.png#pic_center]] 唯一的 HN-J01166 定义并使用了 wc 函数,但是…… ![[csp2024jhn14.png#pic_center]] ![[csp2024jhn15.png#pic_center]] HN-J00013 使用了 nm 作为数组名,且进行了超长的打表(代码已格式化)。 ![[csp2024jhn16.png#pic_center]] ### 牢 $6$ 个文件使用了 man 作为变量、数组、函数的标识符,没有人在代码中写出 What can I say。HNJ000171 牢哥还在后面写错了他的 man。 ![[csp2024jhn29.png#pic_center]] ![[csp2024jhn30.png#pic_center]] ### 洛谷 共有 $10$ 个文件出现了洛谷的用户名或 UID。HN-J00254 对评测机进行了陈恳的祈祷。HN-J01784(疑似洛谷 fansj,读作发神经)可能与 XBT(小变态)有一段难以启齿的往事。 ![[csp2024jhn17.png#pic_center]] ![[csp2024jhn18.png#pic_center]] ## 额外 HN-J00151 应该算是非常能整活的了。没有开子文件夹 + freopen 输出文件后缀为 .ans + 注释 freopen + 《comtinu》(正确的:`continue`)。 ![[csp2024jhn5.png#pic_center]] HN-J01053 还在 chain 子文件夹里面创建了一个 未命名1.cpp 文件,内容为自编的猜数游戏。这位选手还在 explore 开出了超大数组。 ![[csp2024jhn10.png#pic_center]] ![[csp2024jhn11.png#pic_center]]