由于洛谷专栏没了,故放博客园存档。
CSP-J/S 2024 游记
前言
2024.9.29 ~ 现在:
\(\footnotesize\mathbf{安全声明:洛谷的文章只显示 {\underline{\color{red}{发布时期}}}而不显示{\underline{\color{red}{更新时期}}}!} \\ \footnotesize\mathbf{题目和答案均为{\underline{\color{red}{考后更新}}},{\underline{\color{red}{并未造成泄题}}!}}\)
本篇文章含水量较多。
虽然标题是“CSP-J/S 2024 游记”,但是这算是 2024 CSP 一段时间的 废话 记录吧。
非废话内容请看“2024.9.21(初赛)”和“2024.10.27(复赛)”。
2024.9.1-2024.9.19
开学了,搞初赛,J 组模拟可以保持在 80 分以上:\({83.5,87,82}\) 掉的最低也是 \(70\) 多。S 组做 2019 年卷子拿了 \(77.5\) 之后:“这给我干哪来了?这还是 S 组吗?”但是别的年份的 S 组就没这么好了,2020 年有 \(58.5\) 分,2021 年 \(54\) 分。初一有人快要爆初三的金币了。
2024.9.20
晚修数理化,不上了,第八节课 \(4:45\) 一下课就润。 才不是因为女生跑操掉队贼严重导致整个班第九节课全体加练呢
回到家吃完饭就去听网课,几个 xxs 那个那个腾讯会议的互动批注乱涂屏幕,老师叫了好几次还在那画,甚至给老师 p 了个兔子耳朵上去,xxs 太厉害了!
2024.9.21(初赛)
上午场·入门组
\(6:30\) 起来,吃完早餐之后去赶大巴车,恶补了一下哈夫曼编码,\(8:30\) 左右到考场。
某考生:“老师请问这个试室在哪?”
老师:“(宕机 \(3 \operatorname{s}\))不是你这个考点在 sz 啊。”(不堵车最快也要 \(1 \operatorname{h}\))
(全体 CPU 未响应 \(3 \operatorname{s}\))
考生:“我嘞个骚刚”跑走
全体看着那个考生走了,为她默哀(或者是宕机?)了 \(3 \operatorname{s}\)。
不知道干了些什么事然后 \(9:00\) 进试室。
考场上下左全都是 xxs(右边是墙),一个绿色衣服、一个黑色衣服、一个灰色衣服(?)
从进来我就想:“怎么这个三个小学生?”,然而我还不知道事情的严重性。
开考前 \(15 \min\),那个绿色衣服中的就一直在问监考老师问题。“老师这个答题卡怎么填?老师这个答题卡知情同意书要填吗?”“老师这里填什么那里填什么?”此时监考的心情还是好的。
开考了。第三题排列组合想着先把 ABC 三个工作室选出来一个人,然后再从剩下的 \(7\) 个人中选一个,就是 \(4 \times 3 \times 3 \times 7=252\),发现选项没有这个答案。这不对啊?没有限制的情况下最多也是 \(C_{10}^{4}=210\) 种,这哪里有 \(252\) 种?选了个 \(210\) 以内最大的 \(\rm{C}.132\)
第四题,这个格雷码是什么鬼?蜘蛛感应看着 C 的二进制是 \(0,1,3,2,4,5,7,6\),就是换了两个位置,就选了 C。
然后听到了原神启动的小曲?严重怀疑工作人员偷偷在广播室里玩原神然后没有关广播。 当时甚至还有人喊原神启动。
接下来,耐问王开始发力了。
“老师,这个答题卡怎么填?”
“老师,这个准考证号填哪里?”
“老师,答题卡呢?怎么还不发?”
然后抖了抖椅子,我把桌子往后挪移一点,他又靠过来抖。
选择题做完,开完形填空。A 篇一眼送分题,但是这明明一行代码 num==int(sqrt(num))*int(sqrt(num))
的事情偏偏写个暴力干嘛?
B 篇,丸辣!完全不知道怎么写,1、2、5 空靠蜘蛛感应,3、4 空完全乱写。
准备开阅读理解。
第一篇纯送分,换做以前估计得给你搞个 f(),g()
或者什么的抽象函数名,今年直接把功能给你写函数名上了,isPrime,countPrimes,sumPrimes
是个人都能知道是判断素数、统计素数个数、统计素数和。TFTBB
直接秒了。
第二篇看起来像 dp,实际上好像也不知道这在 dp 啥,直接模拟过了,ABBABA
。
第三篇,不是哥们(虾、电脑.jpg)这代码 \(18\) 行???这 customFunction
(以下就简称 f
吧)不是一眼 \(f(a,b)=a \times (b+1)\) 吗?龟速乘法是吧。28 题会无限递归?这个 \(b\) 溢出就还是会回来的吧。29 题,这题目复杂度一眼 \(O(b)\),肯定是对的。
\(45 \min\) 搞完。监考老师在黑板上写了几个修改的地方,不过好像不影响,但是改 \(12\) 题是为了干扰学生以为修改过的 D 是正确选项吗?
接下来耐问王发力了:
老师我可以提前交卷吗?
老师我能在答题卡知情同意书上打草稿吗?(展示草稿)
老师怎么还不发答题卡?
老师我能用涂卡笔涂这个吗?
老师这个知情同意书要收吗?
老师我可以用铅笔涂卡吗?
老师这个地市是什么意思啊要填什么啊?
老师我看不清这个字啊?
然后老师有点忍不住了:“你把嘴巴闭上。就你事最多。”
终于闭了一会嘴了。然后又开始搞椅子、敲桌子。
接下来就是开始搞那个汉诺塔了。打算枚举这 \(4 \times 4\) 种可能,一个一个算,看看能不能凑出答案来。疯狂打草稿:
打了 \(10\) 个左右发现诶我可以直接 \(n=2\) 啊,然后算出来步骤 \(A->B,A->C,B->C\) 接着带入回去算一下答案应该是 BB
,但是为什么模拟的时候会出现:\(A\{3\},B\{\},C\{1,2\}\)?一看发现 \(3,ABC\) 还没操作,结果花了 \(40 \min\) 怒拿 \(3 \operatorname{pts}\)。
那个 xxs 转过头来看了看我又看了看我一瓶没开过的水:“请问这个水有动过吗?”我 CPU 又烧了,把水拿走,他就转回去了。
\(15 \min\) 考试结束的铃声响了,过一小会,xxs 突然发生爆炸,发出“欧耶”的一声响(清朝老片指路:实验氢气与空气混合爆炸)
后面就是疯狂检查答题卡答题纸 地理哪一次模考答题卡涂错挂了快十分 之后收卷。铃声甚至还把 xxs 吓了一跳。
“这铃声把我吓一跳”
“孩子你是没考过中考吗?中考就是这个铃声啊?”
“孩子你是真的无敌了,问了十几个问题,你是真的太厉害了。”
然后监考收卷硬控全考场半个小时。其中还有四五个没有图准考证号。
出去一对答案,\(\boxed{85.0 \operatorname{pts}}\) 左右。
下午场·提高组
在车上睡到 \(13:45\),一看外面在下大暴雨,找了个雨小的时候拿着伞跑了出去。
去大门口接到了 lxf,然后全身湿透了,地面上又积水,鞋子也湿透了。
CCF 你是在禁赛芙卡洛斯吗?
门口碰到了枫原万叶,然后又在考场厕所找到了 cxh,什么资料都没看就进考场去了。
开考 \(2 \min\) 才发到试卷。第一个 pwd
命令前一天晚上刚好复习到。第七题排除 BC 之后蜘蛛感应选了个 D,第十题,不是你这个装载因子 \(\alpha\) 是什么鬼?蜘蛛感应 B。第十五题就想出来三种。
做阅读理解第一篇。pivot
?是快排吗?搞了几组数据知道了 logic()
是按位或之后后面的题都好做了。第二十题需要想一下,想想要 \(i=\) 几然后 \(i \operatorname{or} 1010_{(2)}=95_{(10)}\),最后选了个 C。
看完形填空第一篇。upper_bound
直接 BAA
莽过去。后面两个空没什么难度,思考一下+猪猪感应直接 AA
过去。
完形填空第二篇。dijkstra?第一空不知道是啥,蜘蛛感应 A
。第二空,这不就是偷懒不写 cmp
函数然后把第一个变成相反数从而实现把大根堆变成小根堆吗?A
。第三个空看到 memset
自动猪猪感应 0x3f
,第四空不知道,猪猪感应,D
,第五空,这好像是分层图?pre,pre2
?A
。
阅读理解第二篇。完了时间有点不够了,答题卡都发了,只剩 \(30 \min\)。先写个 AAACCC
上去。后面的看看判断题然后选择题直接 CCC
。这第二篇状压 dp?看不懂。诶这个 \(2059\) 出现了两次,选了,第一次在 25 空就选小一点的 C
吧。
阅读理解第三篇。瓶颈很明显在 solve
啊?30 题甚至连加的顺序都给我们安排好了,贴心,\(2i,i,2i+1\) 一眼左根右中序遍历,C
。打了个表,发现 11 题怎么都不可能是 54,太小了,改成了 A.84
。
最后几分钟赶紧检查了一下答题卡之类的。交卷,离开考场。
找到 lxf,cxh,wxl 他们,然后发现自己伞没拿又跑回去,结果被 lxf,cxh,wxl,cWanderer 集体偷拍 /fn。然后进行一个答案的对 顺便炫耀了下嘉明和龙王的圣遗物,cWanderer 还不想对答案,直接趁他不注意拍下来。
然后跟着大巴车回家,又遇到了某个初一的学弟(不是那个万叶厨),混进校队群然后又因为不想报上真名惨遭飞机票一张。
然后对答案,不是这给我干哪来了?这还是 S 组吗?\(\boxed{82.5 \operatorname{pts}}\) 分都给我搞出来?今年题目也不至于是“龙王伸手.jpg”那种难度的吧?枫原万叶 $$\boxed{76.5 \operatorname{pts}}$$,其他好像 $$\boxed{50.0 \operatorname{pts}}$$ 多?今年 S 怎么这么奇怪?
龙王伸手.jpg
考后
晚上回到家发现你谷讨论区在讨论泄题?
某人的犇犇黑历史,我超,题目编号都能弄出来。
2024.9.25-9.26
教练布置了一个 J 组 T2 难度的题单,要求无伤 AK,周三下午干掉了三个题,结果周四中午被回文日期硬控一个多小时结果还 TLE on test 9 /fn 无伤没了啊。
2024.9.27
中午出成绩了,教练发了魔法查分网址但是全都是“查分还未开放”,一边写题一遍刷新。我让教练帮我看了看我回文日期一百多行的屎山代码,结果是我想复杂了?然后 cWanderer 反手甩了个十几行的代码给我。
写了一下单词统计,把 “单词首字母在文章所有字母中出现的下标” 看成了 “单词在文章所有单词中出现的下标”,痛失无伤 \(\times \: 2\)。
等到中午 \(13:30\) 左右可以查分了。
J 组 \(\boxed{93.0 \operatorname{pts}}\) 一看觉得估计得没,但是居然比估分高了快十分?S 组 \(\boxed{82.5 \operatorname{pts}}\) 应该稳了。教练说分数线在 \(\boxed{90.0 \operatorname{pts}}\) 左右。
- zxb J 组 \(\boxed{98.5 \operatorname{pts}}\) 喜提全校第一!
- 枫原万叶 S \(\boxed{72.5 \operatorname{pts}}\) tql %%% 甚至提高组考的比普及组还高。
晚上没有晚自习,回家休息不到 \(24 \operatorname{h}\) 又得回去复习然后周日考 \(9\) 月阶段考。回到家发现道法历史背诵提纲全落学校里了
大保底分数线出了,J 组 \(\boxed{89.0 \operatorname{pts}}\),S 组 \(\boxed{56.0 \operatorname{pts}}\),这下 JS 都稳了。
晚上 div2 切了 A 之后想了半天的 B,最后还是去搞 whk 了。
初赛出分之后,wxl 宣布退役。祝好。初三就只剩下我和 zxb 了。
2024.9.29
9 月月考。
上午语文,默写题“有弟皆分散,无家问死生”前一句填了个“烽火连三月,家书抵万金”,打了考试结束 \(15 \min\) 的铃声之后作文才写到 \(400\) 字,结果之后逼出了 \(450\) 字 \(/15 \min\) 的极限。
历史,考完之后发现选择题错了 \(8\) 个。
中午没有去训练,回宿舍休息,结果两个同学把风扇开了又关关了又开,睡不着一点。
下午英语,完形填空 T12:
没看到后面的 stay 选了个 D.keep。
作文是 2023 年 GD 英语中考原题,不是你这情节是怎么想出来的,去科学周活动然后做梦梦到我成为了一个科学家?初二 vp 中考的时候就蚌埠住了,结果又来这个作文。
出考场一对答案,发现 12 题挂了。笔试 AK 不了一点,再加上听说乱搞的答辩分数,英语 \(115\) 都要没。
道法,背的一个材料居然可以骗整整一道大题 \(16 \operatorname{pts}\) ?然后考完对答案发现选择题就错了三个 \(-12 \operatorname{pts}\)。
总结:答辩。
2024.10.1-2024.10.7
国庆放假,一点题没做,全部去颓废了。在回老家的高铁上干掉所有作业然后就是颓废。
彩蛋:谁问我了.png
据精细的粗略统计,10.1~10.7 内校队学术版+灌水区的消息分布呈现了 \(\color{#AC9424}{9:3:3:1}\) 的黄金比例(闲话+游戏+讨论政治历史 \(9\),讨论学术 \(3\),讨论生物学 \(3+1\))
2027.10.9
下午 \(8 \sim 9\) 节校队测试,三道原题:P2577、CF1881B、P10337。初一初二来的都齐,初三的
zhb 感冒写了写 A 之后就回家了。cWanderer 写了半天的 A 结果第九节课又要去体测训练。目前就我、cyh、lzy、oy、枫原万叶和一些初一初二在比赛。
看 A 一眼贪心,想着 A 应该不会出什么毒瘤题目吧。于是开始推规律,接着想了想这会不会是 dp 呢?不会做,去写 B。
B 观察样例一眼出结果,把 \(a,b,c\) 全部变成 \(\gcd(a,b,c)\) 就可以了,写了写过样例之后去写 C 了。枫原万叶:A 很难,先去写 B。
C 想着可以把所有数字全部变成 \(\operatorname{lcm}\),然后就在想 \(O(n)\) 的做法。还要卡常(学校的清朝老机跑不了多快)。之后又想到 \(k\) 最大值应该就是相同数字的个数,但写完代码之后直接随便一组数据就 hack 掉了,时间不多了,去看 A。
A 想着可以先排个序然后直接暴力枚举每个人可以放哪个窗口,写着写着时间就到了,没写完,看看能不能写个 \(n=1,2\) 的分。
代码收上来后立马评测,结果一片 \(0\),就我和 lzy B \(100\) 分,总分也是 \(100\)。
\(0+100+0\),鉴定为 C 还能再拿点分。
然后晚上回家洗澡的时候把 C 想出来了,如果整个数组只有一种数字答案就是 \(n\),否则就是 \(n-1\)。
2024.10.10
停晚修的申请终于过了。晚上可以在家打模拟赛。
中午补题,用昨天晚上想出的做法切掉 C。
听说今天 \(5.1\) 更新了 cWanderer 又打开原神 wiki 看了半天希诺宁然后因为嘉明和龙王在 wiki 没有背景图笑了我半天
然后用把昨天的暴力选窗口改成了砂金算法,切掉 A。mt19937 rng('Neuvillette');
注:“砂金”这一梗源于初赛时某个初二才子不会做题只能蒙答案并且还有技能台词“所有,或者一无所有”。
晚上回家做 Public NOIP Round #1 (Div. 2, 普及)。
看 A,感觉像是思维题,想了半天结果看到数据范围 \(n \leq 100\) 直接暴力。写完之后整个人感觉要困死了(昨晚快两点钟才睡觉,六点钟又起来,中午一直都没睡,下午眼保健操加课间 \(15 \min\) 黄金睡眠时间没睡着)
看 B,大模拟。正面和上面很好想,但是侧面的图想了半天还没有结果,于是打了个 \(c=1\) 的部分分 \(60 \operatorname{pts}\)。
看 C,没思路。
看 D,想着子任务 \(1 \sim 2\) 数据量很小 \(n \leq 16\) 可以直接暴搜骗分,子任务 \(4\) 可以直接排序然后干掉一列的第一个和最后一个就可以。结果实现起来很麻烦,最后几分钟写了写 \(n \leq 3\) 分类讨论,结果交上去发现一分没有。
总分:(上标表示挂分)\(100+60+0+0^{\color{red}-5}=160^{\color{red}-5}\)
2024.10.11
中午评讲校队模拟赛题目,A 教练说是 dp,但是这个状态转移方程一直看不懂。
据中午教练说 €€£ 复赛收这么多钱一部分是用于经费,省里面收一点应对罚款,€€£ 还要收一点,但是这就不知道 €€£ 拿这些钱干嘛去了。
氟铀碳钾,三个月的伙食费啊!!!!!1
晚自习上课,但是还是润回家打 Public NOIP Round #4 (Div. 2, 普及)。
看 A 一眼打卡题,B ≌ CSP-J 2022 初赛洪水填充,bfs
秒了。
看 C,好像如果模拟的话 Subtask \(1 \sim 4\) 都可以拿,一共 \(80 \operatorname{pts}\),但是 \(1 \sim 2\) 的暴力都写挂了,代码里就只有 \([L_i,R_i]\) 互不相交的特殊情况,预计可以有 \(20 \operatorname{pts}\)。
看 D,诶我有一计,按照入度分组,设入度为 \(r\) 的组的大小为 \(s_r\),入度小的一定在入度大的前面,有 \(\prod_{i=x}^y s_r !\) 种可能,入度相等就是 \(s_r ! \div 2\),然后一通乱搞。
突然发现,这次比赛可以拿 \(100+100+80+100=380\) 分!
然后把 D 的代码打完才发现样例都过不去。图 \(G(V(1,2,3,4),E(1 \to 2,3 \to 4))\) 拓扑排序除了 \(1324,1342,3124,3142\) 还可以把两个组交叉 \(1234,3412\)!结果最后只打了个 \(m=0\) 的部分分。
考试最后几分钟想着做一下 C 的 \(m=1\) 特殊性质,打挂了。
预估:\(100+100+20+5=225\)
实际:\(100+100+0+0=200\)
C \([L_i,R_i]\) 互不相交也给写挂了。总结:前 \(20\) 分钟拿了整场比赛 \(100 \%\) 的分。
2024.10.12 - 2024.10.18
周末模拟考。只打了上午的 J 组,下午 S 组没打。
AB 一眼送分题。剩下都在写 C,结果写了一坨 \(O(nq)\) 的表达式树做法还挂的只剩 \(8\) 分,D 没时间写只好输出 0
骗 \(5\) 分。
预期:\(100+100+100+5=305\)
实际:\(100+100+8+5=213\)
周三校队测试,看 C 好像是 DP 板子,结果就只能写个前缀和暴力拿 70 分。然后看 B,感觉像一个数学问题,A 像是背包 dp,但是想了想还是觉得物品的重量不知道设成什么,就只能交了个写挂的暴力上去。
预期:\(0+100+50=150\)
实际:\(10+38+70=118\)
排行榜上 B 都是清一色的 38 分,其他题目都是 0,但是 zhb 大佬拿了 \(100+38+90=228\) %%%(也更加确定了我是 fw 的事实)
周五回家入门赛,1h19min AK 之后就去 whk。
2024.10.23-25
周三学校模拟赛,题目看了一眼之后发现可以 \(100+100+30+100=330\),打了 1.5h 之后最后一节课刚好下课,就试着交了一发(但是 //freopen("fight.in","r",stdin);
)结果只有 \(90+\rm{NaN}+30+10=130\) 比学妹少 \(10\) 分。
晚上回家之后发现题面没拷回来然后题目做不了了。 在 cWanderer 的提醒下还能忘记拷
周四中午去机惨教师机上找题面,把整个 lemon 和 D 盘都翻遍了才发现题面就在桌面上。教师机刚刚开着就把枫原万叶和 cWanderer 的代码都测了一遍,结果发现 cWanderer T4 拿了 \(80\)??晚上回到家随便造了几个数据一测发现代码都是假的,打开从教师机上偷过来的数据一看发现数据怎么这么水。
周五中午讲题,T1 送分不用说 教练说造了一堆 0 的 corner case 卡死我们的代码,T2 RMQ 问题(CF1719C),T3 数位 dp 或者 dfs,T4 用 set 或者平衡树维护。vector 维护 + 二分的做法结果直接一个 set 解决
下午体测 \(10^3 \operatorname{m}\),身体有点不适,TLE 了整整 \(11\) 秒 \(3'51''\)。
晚上回去也不知道该干嘛。考前根本不知道干嘛。枫原万叶还在背线段树。
2024.10.27(复赛)
上午场·入门组
六点半起床,八点进考场,键盘的空格居然没坏。
开考了。5 min 浏览了一下题目。T1 送分,T2 模拟,T3 贪心或数学,T4 看不懂。
开 T1,发现这好像就是一个 set
的事情。10 min 切掉。
开 T2,这送分过于明显了吧。连怎么做都告诉你了。10 min 切掉。去上了个厕所。
考试才刚过去一个半个小时就开 T3 了。先从两个特殊性质入手。看这个特殊性质 A 直接不停输出 8
就可以了。特殊性质 B 看了看像是 1088 10888 108888 1088888 10888888
也拿下。最后打了个暴力,一看这答案后面怎么这么多 8
?然后就找规律把正解写出来了。
看 T4,还剩一个小时,有点不知道怎么下手,特殊性质也不好拿,打算先拿完 \(r \le 1\) 的分。然后考试结束了。
预估:\(100+100+100+5=305\)。
下午场·提高组
在跑道上见到了 lxf 和失踪的猫娘(最近在群里好像一条消息都没看到),接着准备去找枫原万叶和 zhb,但是找了半天找不到。
开考。看 T1 先从 \(r \le 2\) 入手,拿出草稿纸画了画发现只要让 \(r=2\) 干掉 \(r=1\) 就可以。然后想了想发现可以把结论推广到 \(r \le 10^5\),把怪兽按照攻击力分层,然后直接让怪干低一层怪的就可以了。最后用优先队列打完,一个小时过去。
看 T2,发现可以从特殊性质 AB 入手,只需要留下一个测速仪就可以了(如果没有车超速就全部关了),一小时打完特殊性质 A 之后上了个厕所回来把特殊性质 B 拿下了。最后用暴力搜索拿 \(n,m \le 10\) 的分,剩下一个小时。
看 T3,发现没给特殊性质,如果真给了就整个所有数字都不相同的然后直接不可以总司令。把 T2 的 dfs 粘过来改改,20 分钟拿下 20 分。觉得正解是 dp 但是还是没写。
看 T4,看不懂。剩下 20 min 想试试 T2 的特殊性质 C,思路是二分查找一下离车辆驶入道路最近的一个测速仪,如果这个测速仪检测到超速那么就留下,结果写挂了。最后两分钟发现 T1 //freopen
。
预估:\(100+50+20+0=170\)。
出考场后 lxf 和猫娘都说有 \(150\) 了。估计可以蓟县一等。
回去偷拍到了 lxf 和猫娘的照片:
【该照片已被删除】
这张拍的不是很清楚:
【该照片已被删除】
群里讨论估分,发现都是 \(100 \sim 170\) 左右的分数。
这次 J 组感觉题目远远没有去年的难,S 组也比去年简单,估计分数线也会涨吧。
2024.12.18 校队比赛
题外话:2024.12.18 是那维莱特的生日,将这条消息转发至 \(\sqrt{-1}\) 个群聊即可在 5.2 卡池结束前中抽到 6+5 龙王。我试过了,是 _____ (选填“真”或“假”)的,因为我 \(372\) 抽才抽到 \(2+1\)。但 2024.12.18 真的是那维莱特的生日,让我们祝他生日快乐!
游记
学校的特色赛制 OI×IOI:可以随时提交代码,但是只能交两次。
16:00 开考。看 T1 感觉像找规律题,先打了个 \(O(n)\) 的暴力找规律,发现可以按照 \(x=0,1,2\) 分三种情况讨论,然后打完,测样例发现 \(x=1,ans=n \bmod 3\) 规律搞错了,改了之后 16:46 提交,过了(真没想到会被这种题硬控 46 min)
看 T2,瞪眼发现是求 \(\gcd _{i=1}^{n}a_i\)?先打了个暴力,再把正解写了,自己弄了几组大样例测试发现没问题就交了,16:51 过了。
看 T3,发现这不是简单约瑟夫模拟?一看数据范围 \(n \le 10^{12}\) 发现只能 \(O(1)\),找了半天也没啥规律,教练说也没部分分,17:10 分就换下一题了。
看 T4,一眼 dfs,但是调了半天也没调出来。
一看排行榜,发现 T3 有两个人交了 \(40 \operatorname{pts}\) 的 TLE 代码,发现这题暴力是有分的,2 min 火速写了个暴力 17:43 交上去拿了 \(50 \operatorname{pts}\)。17:44 把 T4 交上去喜提 \(0 \operatorname{pts}\)。
17:45 结束,喜提 rk1!
总分:\(100+100+50+0=250\)
赛时代码
夹了一点私货
T1
//2024.12.18 祝那维莱特生日快乐!!
//5oiR5piv6YKj57u06I6x54m555qE54uX
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
constexpr int N=2e9+2;
constexpr int inf=20241218;
ll n,x;
constexpr int x1[5]={1,0,2};
int main()
{
// freopen("neuvillette.in","r",stdin);
// freopen("neuvillette.out","w",stdout);cin>>n>>x;if(n==1&&x==2) cout<<2;else if(x==1) cout<<x1[n%3];else if(x==0) cout<<((n+1)/2)%3;else cout<<((n-2)/2)%3;return 0;
}
/*
n x ans n%3
1 1 0 0
2 1 2 2
3 1 1 1
4 1 0 0
5 1 2 2x=1 ans=n%3
x=0 ans=((n+1)/2)%3
x=2 ans=((n-2)/2)%3
*/
T2
//2024.12.18 祝那维莱特生日快乐!!
//5oiR5piv6YKj57u06I6x54m555qE54uX
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
constexpr int N=1e5+7;
constexpr int inf=20241218;
int n,a[N];
int gcd(int __m, int __n)
{while (__n != 0){int __t = __m % __n;__m = __n;__n = __t;}return __m;
}
int main()
{
// freopen("neuvillette.in","r",stdin);
// freopen("neuvillette.out","w",stdout);scanf("%d",&n);for(int i=1;i<=n;i++) scanf("%d",&a[i]);int g=a[1];for(int i=2;i<=n;i++)g=__gcd(g,a[i]);cout<<g;return 0;
}
T3
//2024.12.18 祝那维莱特生日快乐!!
//5oiR5piv6YKj57u06I6x54m555qE54uX
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
constexpr int N=-1;
constexpr int inf=20241218;
ll n,k;
inline void solve()
{queue<int> q;for(int i=1;i<=n;i++) q.push(i);int cnt=0;while(q.size()>1){cnt++;int u=q.front();q.pop();if(cnt==k) cnt=0;else q.push(u);}cout<<q.front()<<endl;
}
int main()
{
// freopen("neuvillette.in","r",stdin);
// freopen("neuvillette.out","w",stdout);while(cin>>n>>k) solve();return 0;
}
T4
//2024.12.18 祝那维莱特生日快乐!!
//5oiR5piv6YKj57u06I6x54m555qE54uX
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
constexpr int N=13;
constexpr int inf=20241218;
const int n=9;
int a[N][N];
bool vr[N][N],vc[N][N],vx[N][N]; //标记行、列、九宫格
bool is[N][N];
inline int jgg(int x,int y)
{if(1<=x&&x<=3 && 1<=y&&y<=3) return 1;if(1<=x&&x<=3 && 4<=y&&y<=6) return 2;if(1<=x&&x<=3 && 7<=y&&y<=9) return 3;if(4<=x&&x<=6 && 1<=y&&y<=3) return 4;if(4<=x&&x<=6 && 4<=y&&y<=6) return 5;if(4<=x&&x<=6 && 7<=y&&y<=9) return 6;if(7<=x&&x<=9 && 1<=y&&y<=3) return 7;if(7<=x&&x<=9 && 4<=y&&y<=6) return 8;if(7<=x&&x<=9 && 7<=y&&y<=9) return 9;return 9;
}
inline void print()
{for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)cout<<a[i][j]<<" \n"[j==n];exit(0);
}
inline bool check()
{for(int i=1;i<=n;i++)for(int j=1;j<=9;j++){if(vr[i][j]||vc[i][j]||vx[i][j]) return 1;}return 1;
}
void dfs(int r,int c)
{if(r>=9&&c>9){if(check()) print();return;}if(c>9){dfs(r+1,1);return;}if(a[r][c]!=0){dfs(r,c+1);return;}
// cerr<<r<<' '<<c<<endl;for(int k=1;k<=9;k++){
// cerr<<'['<<vr[1][9]<<','<<k<<']';if(!vr[r][k]&&!vc[c][k]&&!vx[jgg(r,c)][k]&&!is[r][c]){vr[r][k]=1;vc[c][k]=1;vx[jgg(r,c)][k]=1;a[r][c]=k;dfs(r,c+1);vr[r][k]=0;vc[c][k]=0;vx[jgg(r,c)][k]=0;}}
}
int main()
{
// freopen("neuvillette.in","r",stdin);
// freopen("neuvillette.out","w",stdout);int xx;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){cin>>xx;a[i][j]=xx;if(xx!=0) is[i][j]=1;vr[i][xx]=vc[j][xx]=vx[jgg(i,j)][xx]=1;}dfs(1,1);return 0;
}
注:代码中存在一些类似某种编码的字符串,那只是一种无意义的字符组合,不是什么编码,无需在意。
题解
T1
有三个变量 \(a_0,a_1,a_2\),其中有个变量的初值为 \(1\),其他两个变量都是 \(0\)。
有 \(n\) 次操作,对于第 \(i(1 \le i \le n)\) 次操作:
- 若 \(i \bmod 2=1\),则交换 \(a_0,a_1\) 的值;
- 若 \(i \bmod 2=0\),则交换 \(a_1,a_2\) 的值。
\(n\) 次操作全部完成后,变量 \(a_x=1\),求初始时为 \(1\) 的变量的下标。
T2
现在你有 \(n\) 张卡片,第 \(i\) 张卡片上的数字为 \(a_i\),你会对它们进行若干次操作。
每次操作,你会先找出卡片上最大的数字 \(x\),与最小的数字 \(y\):
- 如果 \(x=y\),那么停止操作(显然所有卡片上的数字是一样的);
- 否则将所有 \(a_i=x\) 的卡片上的数字变成 \(a_i=x-y\)(即:当 \(a_i \neq x\) 时,\(a_i\)不变;当 \(a_i=x\) 时,\(a_i=x-y\)),然后进行下一次操作。
你需要求出最后的卡片上的数字是多少(因为所有的数字都是一样的,所以只需要输出一个数字)。
30 pts:\(n \leq 100,a_i \leq 1000\);
100pts:\(n \leq 10^5,a_i \leq 10^9\)。
T3
约瑟夫问题。\(n\) 个人,报数到 \(k\) 的人踢出圈,问最后一个在圈中的人的编号是多少。多测,\(n \le 10^{12} , k \le 10^3\)
2024·生物地理中考 游记
一篇文章需要一个头图:
2024.6.21-23 中考前一周
稍微卷了一下,周六去图书馆干了 \(3\) 张卷子,在家肝 \(1\)
张卷,搞到两点钟,早上起来跟似了一样。
2024.6.24-27
中考前最后一周了,此时学校还没有停其他课,然后我上其他课都在写生物/地理,班主任的数学课都在看生物书,中午去机房训练的几个初二全是 A 一道红题然后开始写生物地理。作业开始了 “P2P 合作探究模式”
自己模拟了几次考试,地理甚至可以挂到 \(86 \sim 88 \operatorname{pts}\)(选择题过于玄学),生物还是 \(95\operatorname{pts} +\)
2024.6.28
学校停掉了所有的课,只留下了生物地理。
早上语文早读根本学不进去一点,脑子里只有生地了,还趴了一会。后面一整天生物地理课轮着上,今天一天就写了十多张卷子。下午初一的全走了,@Wu_sqmmt 拿着手机在班门口看着我上课()
座位表出来了,一看考场编号是我班的编号,以为是自己班,结果是初一的。又看到后一列,以为我去 @Wu_sqmmt 班上考,结果才发现是座位号。
2024.6.29
上午还是复习,模拟考发现地理挂了 \(5\) 个选择题,生物卷子因为早上做精神不太好所以挂了 \(8\) 个选择题(慌了),中午收拾东西就离开教室了(因为要当考场),下午集体去体育馆复习,没空调,热死了,复习不进一点,而且还很吵,听到晚上还是在这里复习且没有椅子,就直接请假回家了。
后面公布在食堂晚自习,又炸了,食堂也没空调。后面又改成在宿舍,真不知道怎么安排的,班上一大堆同学都回家了。明天就希望选择题拿满 \(60 \operatorname{pts}\) 吧,然后地理大题少挂点分。
晚上很紧张,睡不着,翻来覆去了好久 ,最后还是打开 b 站看了看嘉明和那维莱特的二创才不紧张。
中考当天 2024.6.30
六点钟起床回学校,到宿舍楼下准备发准考证,然后发现水杯忘带了。然后老师送考,提前了 \(40 \min\) 到了考场,拿着地理问答题材料看,然后我就变成了最后一个进考场的。
地理
发卷了,紧张感上来了,肾上腺素拉上来了,考前 \(5 \min\) 看了看卷子,前三题一眼 BBC
,这第六题是送分的吗?直接把大洋标给你,考前还忘记看了大洋。整张卷子翻一下,发现押的时事热点一带一路居然没考?
开考了,选择题好像简单了一点,分析原因类的选择题感觉做起来没有很困难。\(15 \min\) 速通完选择题之后看两道大题。
\(31\) 题考了巴西和新能源汽车,发现分析有利条件的题可以直接抄材料?有利影响也可以抄?
看 \(32\) 题。粤港澳大湾区,好吧不是一带一路。在第二小问卡了一下,第三第四小问继续抄材料。材料题写完剩下 \(20 \min\),然后检查也没检查出啥,把大题的语言补充一下就收卷了。
考完之后某个同班同学(就叫他小 L 好了)在考场大叫然后被监考赶走 很符合他的性格 ,找 @ws517602 借了一本八上的书然后恶补细菌和真菌那一章节(尤其是细菌真菌的利用,很不熟)
考后本打算不对答案的,结果小 L 同学贴脸对答案!谁问你了!他说第一题选 A,心态瞬间凉了一大截。
生物
考前拿着书再看了看植物,进考场。草稿纸上写了可能考到的知识点(酵母菌发酵等)试卷一发下来,\(5 \min\) 的阅卷时间就干完了第一面!第十五题刚好在考前看过!这个称心如意金苹果 (开头的图) 真好用!开考 \(10 \min\) 干掉选择题。
看 \(31\),第三小问“____ 入侵”?填空题好像问的有点***钻了,写了个生物入侵。第四小问你确定考的不是地理?写了个海水淡化。
看 \(32\),第二空又不知道填啥了(平均?),第二小问推测原因那一空差点爆格了。
看 \(33\),第三小问填两个基因名字,填了个抗病和高产。
看 \(34\),不是怎么生物学还有作图题?黄粉虫可以吃?于是我就画了这样一个图(红色标记):
第四小问,开放性题目。
最后还剩 \(20 \min\) 检查,没查出啥,觉得“高产基因”不符合材料改成了“多籽粒”,最后一分钟发现物质循环图那黄粉虫连了微生物一条线,马上补了个:
人 \(\stackrel{废物}{\longrightarrow}\) 微生物
考试结束。
考完之后还得集合一下才走,然后还被塞了一张英语卷子回家做。对了下答案,发现地理第一题选 A?可能是看到了那个居民地都没有等高线穿过就选了平原,结果是丘陵!痛失 AK。