10.7 ~ 10.13
10.7
国庆最后一天。
大家今天都开学,就我们不开,赢!
上午模拟赛。
T1 看着就是那种很签的题,想了一会发现不会,先把 \(O(n^4)\) 的暴力写了;
然后开始看 \(c_{i,j} \le 400\) 的 \(80\%\),想了个枚举颜色 + 两行的写法,直接开写;
写完之后突然发现复杂度是 \(n^3c\) 的,这不和暴力一个复杂度吗 😅
强行套了个 bitset
优化到了 \(\frac{n^3c}{w}\),自己手造的样例跑了 0.9s,有点小慌,但是想不到别的做法了,开 T2。
T2 看题:这不直接线段树……不对这不直接差分做完了吗。
\(s,t \le 10^9\)
woc 不是哥们 😅
想想别的。
好像可以珂朵莉树维护区间?
打了。
啥意思咋小样例死了
离散化一下咋还不对到底哪锅了
再看一眼。
问:对于一段区间 \(l,r\),其中所有数都为 \(val\),求这些数的乘积
我的答案:\(val \times (r-l+1)\)
🤡
改完之后小样例过了,第二个大样例错了。
研究一下发现不是区间推平,只能暴力修改。
改完之后大样例 0.7s,感觉很悬。
T3 看题。
一眼不会。
两眼不会。
尝试手模样例,然后模了快十分钟才把第三个小样例算出来;
然后也没看出啥有用的 😥
直接打 T4 暴力去了。
T4 计数,看着就是神秘题,决定直接看部分分。
\(n \le 5\) 直接搜。
\(0 \to 5\)
链推一推性质发现前两个盒子必须有猫,后边随意。
\(5 \to 20\)
所有 \(b_i>i\) 那个和链差不多,判的东西多一点罢了。
\(20 \to 35\)
剩下的不会了。
不过在 T4 的得分效率高于 T3。
回去看了看前面的题
T3 因为一点不会连搜都没打
但是糊了一个正确性一点没有的最小生成树上去(
然后就是大战唐氏 T1,T2,均未果,已破防。
然后就摆了(
啥意思三个签到我咋一个没签上啊
T1 可以只枚举两行和其中一行的颜色的,这样就是 \(O(n^3)\) 的;
或者直接 bitset
优化 \(O(n^4) \to \frac{n^4}{w}\) 也能过。
我:我上的
bitset
只有 80
GGRun:\(\frac{n^4}{w}\) 能过啊我:我是 \(\frac{n^3c}{w}\)
🤣👉🤡👈🤣
T2 可以离散化之后差分
所以我前半段想到差分,后半段想到离散化
但是没拼一起(
T3 是妙妙区间 DP,推个性质就出来了。
fun fact:前三题的通过人数为 14/16/15,约等于三道签到。
T4 基环树。
学过且仅限于学过。
下午改题。
改一半改不动了写了个 24 点,然后写一半死机了 😥
我:次序乱了咋整
HDK:我不到啊
(调试)
我:卧槽我电脑死机了
HDK:你不会一版都没保存吧
HDK:你这种坏习惯应该改改
🤣👉🤡
晚上改题。
看 HDK 玩 UNO 第一轮被 +2,第二轮被 skip,第三轮被 +4, 然后直接红温(
心情一下就好起来了 🥰
10.8
上午模拟赛。
开题。
t1需要线性基,不会的可以先做后三道
好了,今天又签不上到了 😅
看 T2。
想了一会之后想了一个在树上直接做的方法,过了所有样例;
但是这题输出只有 Yes
和 No
所以有点慌;
更关键的问题是我不会打这题暴力所以我拍都没法拍 😅
看 T3。
感觉是什么高级东西,把 sub1 的背包和 sub3 的搜打了之后就扔了(
发现 T4 是大数据结构。
这我做个……等会好像有点可做;
想了一个线段树 + 莫队的 \(O(n \log n \sqrt n)\) 做法,打完之后把大样例拉下来一测,5.5s,你妈。
本来都准备弃了,又看了一眼题面,时限 3000ms,然后开始卡常。
卡了半天没卡动,红温了,回去看前面的题;
T1 想了半天之后还是不会,而且是彻彻底底的不会,暴力都不知道咋打的那种;
然后把 T2 T3 都看了一遍之后还是不会,于是回去给 T4 卡常;
卡了半天卡到了 3.5s 实在是卡不动了
不是这还是过不了啊 😥
摆了。
T1 就是线性基板子。会就过了,不会就爆零。
T2 是 AGC010C
T3 好像是什么奇特转化,等下午理解一下。
T4 用 链表 维护连续段回滚莫队就消 \(\log\) 了
最后卡在了如何维护连续段,想了 \(O(1)\) 秒之后打了一个线段树
🤡
下午改题。
感觉现在改完题之后就没效率了(
这里其实应该还有点什么,但我忘了。
10.9
上午模拟赛。
不知道为啥这次把时间开到了 4.5h,坐牢时间又延长了(
开题。
T1 读了遍题,看了一眼样例输出;
2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)
这不纯纯史题吗这种题就应该被出在 ABC 的 D 上;
又看了一眼发现可以直接分治做。
这不水题吗直接切了 😋
等会看一眼范围不会要开 long long
吧。
\(n \le 10^{180}\)。
考高精的都是傻逼。
把能用 __int128
写的写完跳了。
看 T2。字符串。不会。
T3。字符串。不会。
不是他一场放两道字符串是什么牛魔行为
T4。数据结构。
看了一圈竟然觉得 T1 最可做。
回去看 T1,发现 T1 只需要实现一个高精除低精,打了会过了。
发现 T2 直接暴力有 \(70\) ,同时发现 SAM 能 \(O(n)\) 建立加 \(O(n)\) 求本质不同字串,但是我不会 SUM,直接红温了 😡
然后敲 T3 暴力,敲了一会过了样例把大样例的 \(n\) 改成 \(400\) 一测,2.2s。
算了一下复杂度是 \(O(n^2|s|^2)\) 的,大概是 \(2e8\) 正好过不去 1s,又红温了 😡
然后就开始打 T4。
T4 给了一张表,列出了每个测试点的状况,然后就开始对着表想策略;
-
\(n,m \le 5000\)
暴力。 -
\(n,m \le 3e4,P \le 30\) 和
修改少于 20 次
分块预处理出每个数在进入一个块之后出来的数。 -
每次查询时所有运算符相同
由于加、乘、幂都有结合律,所以种三棵线段树维护三种运算的结果。 -
在任何时刻,运算符只有 + 和 *
分块维护每个块内的 \(y=kx+b\) 的 \(k\) 和 \(b\)。
然后打了 6 个 k,写了 4 个 namespace
写完之后感觉人要似了 😅
然后还剩 1h。
啥都不会了,开始摆烂。
静坐到 12:00 结束。
发现 accoder 上 T1 File Error 了,因为两边的文件名不一样,pow
/ power
。
不是哥们搁这等着我呢十八 😅
T1 是签,基本上全场都过了。
T2 好像要转化一步然后直接哈希就行了。不会不算挂。
T3 可以枚举所有的串并用 哈希 判重。
怎么评价 T2 刚用完哈希然后 T3 反手用了 map
😅
正解是 Trie
。其实应该想到的。
T4 不知道因为啥 RE 了挂了 \(15\) 分 🤔 好像还不是数组的事
恼了。
下午改题。
\(\text{Huge}\) 说他们要去开会,让我们安静点;
所以如何评价 \(\text{晓飞谷}\) 穿着西装衬衫在机房看西游记(
把 T2 的 SAM 版本改出来了。
所以为啥我 \(O(n^2+q)\) 跑的比 \(O(nq)\) 慢
是因为用了双哈希 + map
吗 😅
10.10
今天没有模拟赛。
\(\text{Huge}\) 说让我们去把 vjudge 的图论专题写了,但是看起来好像不太可做;
然后扭头去看了更不可做的 SAM(回文后缀自动机) 😅
大体看了一遍
这东西大概就是……
里面包着原串的所有子串
然后以某种方式将这些串压缩到 \(O(n)\) 级别然后拉出来一堆指针
就像这样
查询的时候就在建出来的图上乱跳 fa
顺便统计答案有的时候还得写个 DFS 在建出来的树上跑
OI-wiki 上对这东西的讲解是码长的五倍还多 😅
看了半天之后决定先打(贺)个板子
板子过了之后又反复看了两遍 OI-wiki 的介绍
然后尝试使用 SAM 来解决一些问题
效果显著
我还是去写图论吧。
所以为啥我还是看不懂 int_R 关于前一天 T2 的 \(O(n^2+q)\) SAM 做法啊 😦
我是不是说过我要写图论的
但是下午打开 vjudge 的时候发现上面多了一个专题叫做“搜索、模拟”
然后就直接把这个专题开了(
A 是做过的小木棍,跳过。
看了一眼 B 原题,紫的搜;
没关系,反正是搜,不会难到哪去对吧,顶多就是剪剪枝
题目大意:给你一套斗地主手牌,求全部出完的最小次数
想先打出最暴力的搜然后一点一点剪
你怎么知道
我光是最暴力的搜就改了六遍
反正就是在各种地方锅锅锅,每次都有新收获 😅
然后就是又臭又长的剪枝环节了。
剪了半天没剪动,瞅了一眼题解发现还要多开一维记一下当前是哪一张来排除等效冗余
所以相当于我之前写的啥 B 用没有 😶
开始爆改代码。
交了一发
不是哥们你咋还有 WA 的啊
题解:
“这个搜是错的,发现这样做你会判不全情况”
“你还应该考虑二带三,一带三这些情况”
让我试试
下载测试点并进行了一番调试之后发现
我有一个分支 DFS 完忘回溯了 😅
【Test Passed. Time:1h 12min 55s】
打个搜打这么长时间我是不是废了
话说最近大家好像都在更各种闲话;
怎么说呢……
int_R 说比过天赋型选手是其他天赋型选手该干的事
然后看了一圈发现别人都是天赋型选手就我是小丑 😅
晚上讲图论专题。
所以我没做怎么办呢 🤔
10.11
上午模拟赛。
T1 签到。
T2 签到。
不是今天的题咋回事 🤔
写完 T1 + T2 就用了不到 1h
看 T3。
咋又是计数题,这是第三道了,今天是什么计数专场吗(
想了半天只想了一个 \(O(nq \times {n \choose c})\) 的做法 😅
随手拍了个搜上去发现小样例不对;
然后就发现我读假题了 😅
不少于 \(c\) 个 \(\to\) 恰好 \(c\) 个
把思路推平重构一下。
发现还是不会做,但是会了 \(c=1\);
先打上了这一部分,然后去看 T4 了;
咋 T4 也是计数啊?
读了一遍题然后手模第一个小样例没模出来 😅
恼了
然后直接开始猜题意
反正就是到最后都没找出来一个同时符合三组小样例的题意,总有一个差 \(1\) 😅
打了个知道正确性一点没有的搜跑了
回头看 T3。
发现搜好像可以记忆化,优化完之后是 \(O(nmq)\) 的 🥰
然后打完这部分之后就一点都不会了 😥
剩下的时间在玩 UNO。
T1 是签,基本都签上了;
但是你 \(n=5000\) 放 \(O(\frac{n^3}{w})\) 过我能理解,放 \(O(n^3)\) 是不是有点抽象了
而且还放过了 \(O(n^4)\) 是啥啊
然后 houbur 加了组数据卡了一下
然后把自己叉掉了 😐
大概就是你用 unordered_map
之类的东西的时候,如果用 []
查询的时候里边没有这个 \(key\),就会自动创建一个为空的 \(\{key,value\}\) 的空二元组;
然后这个东西一多时空效率都会下降;
再加上 accoder 跑得慢,这么写就直接炸了
所以以后还是先用 count()
或者是 find()
查一下吧 🙂
T2 好像是不那么签的签。
所以为啥要打 DP 啊,直接记搜不就好了
反正记搜也算 DP 的一种
记搜还好打还好调,还不用判边界,还能直接从暴力改过来,这不比 DP 式子好推多了
所以赛时 1318ms 光荣拿下最劣解
T3 是个背包,裸背包是 \(O(nmq)\) 的,\(50\) 分其实是给这个准备的;
看了一眼我的记搜并发现它和背包长的一点都不像
然后正解是回退背包;
又是没听过的东西呢。
T4 也是背包,也是回退背包。
你好出题人你家住哪给你寄点好东西
下午改题。
改 T3 的时候看题解说线段树期望得分 \(50 \sim 100\),恰好这个我能看懂,直接打了棵线段树;
然后发现空间炸了
关键是这玩意还优化不动
于是被迫去贺了正解 😥
反正就是
我能看懂但我肯定打不出来 😅
晚上召开了唐氏动员大会;
- 丁真再次荣获二等奖
再次一生之耻
- 发奖状的时候 一等奖/特等奖 错位,于是我就没奖状了 😅
“int_R 在吗?”
- 常规管理落实到位
“上课时间别说话,讨论时间小声交流就行了”
- 5k 慷慨激昂的演讲
- “抬头三尺有神明”
坚定的唯物主义者
- 1.68m,教练,我想打篮球
- “集训队 \(1\) 人,省队 \(5\) 人,全员省一”
重创 HE 荣光
- “一个同学也不能落下”
“你们这届我可以一个都不要”
10.12
上午模拟赛。
T1 签到。
T2 不会。想了半天只打了 \(|s| \le 12\) 的暴力和 \(cnt_0 > \lfloor \frac{|s|}{2} \rfloor\) 的暴力。
T3 一眼线段树,快乐码码码,还剩 1h 多点的时候打完了;
然后电脑死机了。
重启之后就没时间了,试图重打但是没打出来 😥
最后只写了个最暴的暴力;
T4……我就留了十分钟给 T4 你希望我打什么
反正似乐 😅
T1 签。
T2 DP。式子推出来就是签了,推不出来就只剩暴力了。
T3 就是线段树,赛时想的是对的,可能不死机就调出来了 😡
T4 01-Trie + 笛卡尔树,不会。
不过上午有体活啊,下去打了会羽毛球;
然后吃完饭回宿舍玩狼人杀;
-
第一把
(屠边 2 狼 - 3 神 - 2 民)
第一天晚上狼直接刀掉一个平民,然后女巫撒天毒毒死另一个(
总耗时 \(\le\) 5 min 😅 -
第二把
(屠边 2 狼 - 3 神 - 3 民,有白狼王)
第一天死了个民女巫没救,白天没投;
第二天晚上预言家吃刀女巫开药,然后白天验了两个好人的预言家不知道为啥直接跳了;
然后被发金水的猎人也跳了;
然后女巫也跳了;
全 神 起 跳当时给在场所有人都干蒙了
然后后置位俩平民直接就开喷了突然有人说了一句“今天投一个晚上毒一个不是一样赢”
然后大家都相信了
但是场上还有白狼在啊
白狼爆一个晚上刀一个,因为狼刀在前直接就赢了
但大家都没意识到所以接下来发生的就是
好人放心地跳过,然后白狼王也跳过,然后投出去一狼
第二天晚上直接开毒
然后好人就赢了
反正我在上帝视角就是 🤣👉🤡🤡🤡
就喜欢这种唐氏聚会
下午让给 CSP 第二轮缴费
然后就顺手把 vjudge 邮箱绑上了;
又顺手把知乎登上了 🥰
晚上有 ABC;
秉承着“没有史赤就自己找”的精神报了名。
开题。迅速过掉 AB,然后看 C。
……这次怎么把史放 C 上了。
看一眼 D 发现 CD 一个分,但不知道为啥还是选择先做 C
结果就是花了将近半个小时切 C 然后五分钟切 D 😅
看了眼 E 发现是 DP
于是果断写记搜
然后因为没判无解吃了发罚时 😥
F 本来没思路的,然后数据范围 \(n \le 300\),修改次数不超过 \(300\);
那就直接倒过来做加边,每次 Floyd 就好了;
所以为啥加一条边 \(\{u,v\}\) 的松弛不是
for i in 1~n
for j in 1~n
dis{i,j}=min(dis{i,j},dis{i,u}+dis{u,v}+dis{v,j})
而是
for i in 1~n
for j in 1~n
dis{i,j}=min(dis{i,j},dis{i,u}+dis{u,j})
for i in 1~n
for j in 1~n
dis{i,j}=min(dis{i,j},dis{i,v}+dis{v,j})
因为这个又吃一发 😥
G 听 5k 说是原,看着挺简单的但是没时间打了,最后五分钟粘了个代码然后发现不完全一样还得改
直接摆了 😅
没关系,涨分就行 🥰
10.15
没模拟赛,早上有体活。
体活本来想睡会的,然后唐氏学校把灯强制开了,被闪了一下之后就睡不着了(
拿了个拍和隔壁化奥老哥打球去了
到了楼下意外地发现没啥人,爽了,直接开打;
打了一半涛哥来了,正好多一个拍,接着打;
然后又来了个化奥的,涛哥就去食堂拿他的拍,然后我们就被通报了
怎么回事呢
原来早晨不让在操场以外的地方打球
但是老登没跟化奥的说 \(\text{Huge}\) 也没跟我们说 😅
上午都在刷 vjudge 专题,巧了,我还在打搜
然后每道题都会犯一堆唐错然后调好久 😥
吃饱啦 😋
下午洛谷有场 CSP SCP-S 模拟赛;
秉承着“没有史赤就自己找”的精神报了名。
开题。看了一眼 T1,发现自己不会 T1。
只能说还好洛谷不交题不扣大洋
然后一下午就随便写了点题颓了颓。
晚上有 ARC 啊,但是感觉脑子有点不够使就直接 Unrated 了;
看了看题。
A 是博弈论,感觉大家猜结论都挺强的;
应 HDK 要求,特此声明:此处的“大家”不包括她
然后看 HDK 在我旁边做不出来
给我急的
直接帮他猜出来了 🤗
然后 B 感觉扫一遍就能出来,但是大脑锈死了 && 看大家都在狂暴爆罚时就没写;
赛后发现我那个思路换个比较方式就对了
策略大失败,早知道就 Rated 了 😇
然后发现 C 是 FFT
好啊,策略一点也不失败 😅
剩下的时间把前几天的一道 T4 改了
你说的对,但是洛谷本体似了导致我 vjudge 也连不上
怎么会是呢