暑假集训 · 第三间

放假

8.3

上午

因为下午没有动车,所以早走了一会
其他游戏都要更新(而且相当费电),直接启动 9 了

在火车站无聊忍不住了单抽了几下出了 环状水星
因为我前面小保底吃满还歪了所以不是很惊讶
然后换 伽菈波那 池子点了一下,又出了,十分得有十二分的不对劲 🤔

本来这假期是打算 all in 原的夏活和绝区零的主线来着
现在不得不多加点啥东西进去了(

下午

先去看牙
又因为不好好刷牙被医生 D 了(
而且拆牙套的时候因为上牙还有点问题所以只拆了一半(?)

又被带着去超市买东西
唯一给我买的就是两袋泡面

成功达成放假 11h+ 后仍在外面逛悠的成就 😥

淦,然后一直到晚上我都在打 1999 的活动
这东西剧情相当长,恼 😡

回家 DZ 拉我打战地五
我单击下载发现 D 盘的储存 200+G -> 500+MB,妙

后面随便打了打别的就睡了

8.4

去遛狗的时候 @Qyun 跟我说崩铁还和 keep 联动了
具体的内容就是你花 39¥ 请自己跑 666m/2.024km 然后给你一个小徽章 😅
你怎么知道我还是当那个冤种了

这天剩下的时间都用来打 绝区零主线+原神夏活 了
崩铁就把任务过了一下,活动直接丢给我妹(虽然她不太想打的样子)

晚上看 9g 直播入坑原神然后光速被防沉迷单杀 🤣

8.5

没抢上坐票就买了个硬卧
旁边的充电口是 USB 的,我的用不了,恼(
中间去餐车花 45¥ 买了个盒饭结果还是辣的

打会 9 然后稍微躺会也就到了

艹我咋感觉又啥也没干

不是原图

恼了,这次放假忘搞图了,以后还得省着点了

集训

8.6

上午

你说得对,但是根据我(除签到题以外)没暴力分高的题占想出正解的题数的比例来看
最优策略貌似是打完暴力然后直接开摆(?)
其实还得看学长对于暴力分的定义 😥

剩下的……(嗯嗯)
反正成功活着在家吃完了晚饭

最后再更一下 附录2
然后直接启动 附录3

8.7

上午

打模拟赛,不过在家(

t1 刚开始没啥想法,后来觉得 log 跑不满就直接写了
t2 ……
t3 本来以为能用单调队列做一下来着……
t4 ……

反正似乐,在家打模拟赛确实没那种感觉
赛时想反正写的全是一眼分就没继续挣扎了
暴力全打的最朴素的一档(该说不说今天暴力好打)

赛后……

好嘛,现在不缺原图了

下午

找 huge 要了腾讯会议号
感觉那个人的杂题选讲挺抽象的
刚好还挺困就睡了会
……
然后被我妈 D 了(

之后刚好是讲模拟赛题
听完就去改题了
也是成功的一下午啥也没干,难绷(

顺便说明一下
由于我家的超级布局
我妈平时就坐在离我 7m 且能直视我的地方
常规手段根本颓不了 😥

就算在正常回宿舍的时间
只要看到我颓超过 5min 就会开 D
“一天天就知道玩” 🤔

8.8

上午

也是模拟赛起手
t1 想着枚举倍数的复杂度 \(>n\),我又得遍历每个数去找他们的倍数,所以总复杂度 \(> n^2\)这还不如我 \(n^2\) 暴力呢 😥
t2 刚开始题意转化错了,以为是求区间内重复数的个数,先搞了个普通莫队,大样例寄了,发现是求众数所以改了回滚,调了半场没调出来

不过没有完全改(

t3、t4 全是暴力没啥好说的

下午

又是时间利用率极低的一个下午

人话:啥也没干

8.9

发现打模拟赛的好处了
不打这玩意脑子都不带转的
上午讲一大堆东西除了虚树以外半点没听进去

然后下午也只改了改之前的题

8.10

上午

t1 刚开始不会,后来想了个 很大% 会爆 long long 的那个做法(每次让 a[1/n] 加上自己),后来 写闲话的时候 突然想到可以加那个序列里的最值会不会好一点,但是觉得没啥大用‘
t2 可以理解为我写了个随便就能卡掉的乱搞 hash?
t3 ……
t4 看电影那天晚上的 abc,Qyun 和我讲过

这再挂分那我真没辙了,就这样吧(((((

qnmd,又挂了

下午

破防了
huge 3 点讲题,2:59 给我发的会议号
进去刚好听到 t3 讲完
整完之后又看到 Lyin 一脸坏笑走上来
本来想截他的但是没有机会 😥

那就只好给大家来张合照了 )

8.11

上午

我吃柠檬,t3 5k 给我讲过原题然后调了一场没调出来 😥

你说得对,但是

谁家匿名用户赶在我们打模拟赛的时候贡献了这么多提交呢
代码长度和提交时间还这么别致 😅

\(\color{white}{为啥这么说有人以为在说我???}\)

下午

红温了,反正没啥可改的题
摆了((((((((((

8.12

上午

坐高铁来的衡水
放学校的水杯莫名消失了
又带了个过去
这杯子原来泡过茶,用完了也没人洗就在那放着
等我看的时候一股异味,洗干净又用开水烫了一遍看着还行
谁知道还有微粒残留,用水一泡就开始扩散
我在车上拿出来想喝一口,闻这味差点没给我送走 😅

11:40 就到了,先去 kfc 吃了个午饭
地图上搜了一下那个 “衡百店” 还挺顺路
然后就打车去了(因为手机刚好没电所以用现金做的打表出租, 我是 fw 火车站门口找个车找了 10min
路上越想越不对,上次去衡实也是在那吃的,这俩学校两个方向能顺到一个地? 🤔
到了发现车费也比网上看的贵了不少(
给手机充上电后发现 '衡百(国际)' 和 '衡水百货' 不是一个地 😅
好嘛(

开始点菜又差点交智商税了(
这地没联动套餐,但是有另一个联动套餐送 美露辛 的玩具,还好那玩具够唐让我打消了买的念头 😅

返校拿着条,那门卫一看请假原因是 '违纪' ,就说我得待够一周才能进去
或者叫老师带进去,huge 不回消息,后来是 miaomiao 从外面回来给我带进来的(

下午

来了把 t1 做了
然后就是 补觉 讲题环节

下午估计会写写上午的模拟赛?
这几天更的最勤的居然是 挂分寄录

剩下的

8.13

上午

讲了可持久化数据结构 + 李超树
李超树也是给我抽象到了
平衡树的可持久化学长也说没啥大用

反正本来是想写几道可持久化 01trie 然后看李超树来着
结果 @houbur 随了道 网络流 让我做,一看这不水吗,把横边竖边分成两部连起来直接跑 Dinic 不就好了
想着水一道蓝题血赚,但是忘管字典序最小了,只有 10pts,以为就加点东西的事,去看题解发现还挺麻烦,又发现其实还好,所以就去写,但是这个要记录边的编号,我原来那个东西不用我也就懒得写,直接现算每个边的编号,搞完之后发现还是不对,看题解又觉得没问题
转圈时间甚至帮别人调了题,然后自己的调不出来 😥
中午去吃饭前 1min 的时候发现算编号的时候忘加上之前的另一种边了 🤣👉🤡

本来感觉我效率低是因为在家,结果到学校发现也就这样 😅

下午

写数据结构专题发现会了做法也不会实现(
感觉模拟赛总出抽象锅和我答辩的码力脱不开关系 😥

恼了

大黄我吃柠檬
我是 $\huge maoniang$

好吃的题目 发现我之前思路假了(
听到什么合并背包我还以为是从下到上每次有 \(O(t)\) 的合并方法
结果是每次都求一遍背包然后两端合并求一个值是 \(O(t)\) 的 😥

不是把键盘上的关机键设成睡眠了来着
什么新型 jc 把那玩意设了回来我还不知道
然后去吃饭的时候点了一下就似乐 😅

8.14

上午

t1 刚开始题面看锅了,没看明白他是在点上然后滚区间,以为是 到一个新点就 +1 && 起始点不算,理所当然地被样例二卡了,摸了半天 😅
反正用了一个多小时才打出来(
t2 smjb,40pts 的暴力咋打 😥,已经开始背阿房宫赋了,学长你是不是对暴力有什么误解
t3 ……反正目前没懂想让我干啥呢,看上去 40pts 的暴力也不那么好打的样子(
t4 我就说咋看着这么熟,之前那道求区间众数(我赛时还没调出来)的题刚开始想歪的就是这题的不带修版本,火大

所以今天闲话写这么快的原因是没有调不出来的数据结构了,因为不会

哎感觉练暴力也是必要的,那么多部分分每次都打朴素暴力太抽象了

复习了一遍 《阿房宫赋》,这下稳啦!,机房里冷的要死我早饭还没吃多少,真成饥寒交迫了 😥

感觉今天学长这么活跃呢,不过感觉他说了一堆只有他自己能明白的话(

t1 “大胆尝试” 但是 nlog 跑 2e5 怎么说不会有问题
t2 也要 “大胆尝试”,爆搜也算 “大胆尝试” 的一种?
t3 开 5s 只能说是常数的问题吧……我琢磨这 4000 也没法随机化啊,发现我不会计算时间所以只能让他跑到 5e8 的时候 exit() 了 😥

不是这玩意 5s 连我那个的 2e8 都跑不完?

下午

你说得对,但是我甚至都给带修莫队忘了
改题也不知道改啥,好像都不是很好改的样子 😥

就狂水不止然后每小时转一圈顺便帮人调调题
(大码量数据结构还是算了)

然而今天有体活

8.15

上午

恼了被 jc 担心有安全隐患所以直接关机了
然后发现写的闲话没存所以似乐 😥

起晚了,40左右才起
不喜欢吃完饭然后跑步的感觉
以后还是早点起吧
不过我已经进化到对于没有印象了(

上午因为不可名状的原因回宿舍了一趟
再到机房已经 7:50

t1 贪心感觉很对,写了把大样例过了就没管了
t2 认为到一个点的最短路不只一条会对答案有影响,所以直接打的暴力,结果从叶子节点开始删不用管父亲 😅
t3 想的是 莫队+线段树 啥的,后来发现要 回滚莫队+俩线段树 (?smjb),直接摆,你怎么知道我写闲话的时候手贱多交了发回滚莫队的半成品版本甚至 CE
t4 没觉得暴力那么可观,直接 \(O(n^2)\) 预处理然后似乐,\(\le 10\) 的点都没过去 😥

好似,果然只要分少就没啥可挂的(

下午

改了改上午的题
然后一下午就没了,差评

发现在机房里转圈不仅聊不了两句
反而容易变成调题自动机 (?🤔)
而且因为电脑没人看着还会被 jc(

8.16

上午

省流:没挂分

上来半个小时看了四道题和 t3 看对眼了
想着 二维前缀和+我都会推的式子(即把每行较小的那种分开维护) 就好了
后来看数据范围人傻了,但是扫描线好像也行
等线段树都快写完了发现这玩意普通的根本维护不了
想了个和唐诗一样 \(O(n \sqrt{n} \log \sqrt{n})\) 的分块扫描线

另:这个复杂度和我犇犇里发的都是对的,log 里面有个根号,其他时侯我说的唐诗东西就当玩原神玩的😥

反正调了
其中一个锅是指本来散块的处理是直接 sort 一下再二分出 k
调到最后发现是这的锅就直接把整块的移动指针搬过来了,反正(

然后……
没然后了,t3 那个特殊性质和其他仨题暴力一个没打 😅

下午

改个 t2 改了半天
一堆函数加起来已经比我上午写的 t3 要长了
感觉写的很答辩但是不知道怎么写会好点(

luotianyi 说我才知道原前瞻在今天中午
具体东西就不说了反正爽爽爽!!!1
不过星之归还多给了 10 抽是真抽象,nnd 早没有(不过现在好像要求连续不登陆 45d 了,以前有这么久来着?)
还有世界等级开 9 了,难绷,这下真成 8 级萌新了 😭

找全机房发了遍电 🥰

\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)
\(\huge\color{red}{我要玩原神!!!1}\)

感觉不太会实现 t3 的区间前 k 小 😥

致敬前瞻的原图

都给我来玩原神!!!1

蒸的妙妙奇奇

8.17

上午

上午在机房又困又冷又饿
不知道的还以为我在打模拟赛呢(

t1 想维护一个前缀和然后乘一下啥的,但是能被卡到近乎 \(O(n^2)\) ,还好没调出来要不然就遇上水数据了 😅
t2 没啥思路直接跳了
t3 上来先开的就是这个,想着从终点和人开始每个 bfs 一遍,在箱子那取个 min,写完连小样例都过不了直接急了,不过还好急了把代码都删了,要不然就能遇到错解 95pts 的数据了 😅
t4 两个小时的时候才开始看,以为他的操作和询问就是按着时间来的,一想这签到还放 t4 了,之前咋没看到,然后又没过去小样例 😥,怎么说呢,那个先操作再查询的部分分,只会费马小定理求逆元的大脑直接忘了模意义下 tm 不能比大小,部分分也打不对,恼恼恼恼恼!!!!1

反正就是快似乐
先假假假,再锅锅锅
心态这一块拿捏的死死的
说破防就破防
好吧其实还是挣扎了一下的,不过部分分没调出来(
一点部分分没有全朴素暴力真打不来 😥

下午

摆摆摆
貌似啥也没干的样子(

不过有体活

晚上打 abc
纯纯码力赛
D 调了半天,md 给我整不会了
E 就彻底调不出来了
最后看了眼 F 先想的 hash
但是没想到随机化我说这不随便卡
反正没时间了胡个主席树回宿舍发现假了(

8.18

上午

看 oj 上的可持久化专题
t1 又不知道从哪胡了个纯主席树出来
敲完甚至调完才发现假了(

看半眼题解发现是树状数组套权值线段树
luobotianle 想看看我直接给平衡树套线段树整上去是怎么个事
我想着改点地能咋样呢
就粘过来然后随便整了整给样例过了然后交上去 50pts MLE 😅
本来 TLE 是正常的
然后我们折腾了半个早上发现线段树忘开四倍空间了 😥
改完就 50pts TLE 了 🤣👉🤡

把平衡树改成 luobotianle 的 SBT 才过
……
艹我还没打正解呢

下午

调我写的答辩
……(one afternoon later)
peppa pig 看我代码的时候发现我的建树和修改是这么写的

点击查看代码
for(int i=1;i<=n;i++)
	tr.add(i,lower_bound(b+1,b+len+1,a[i])-b,1);

tr.add(q[i].x,a[q[i].x],-1);

nnd 就是说我从树里删的 a 没离散化就直接查了(

另:发现昨天 abc t5 直接倍增就好了,但我刚开始以为只有环假了,在基环树里就老想着处理环 😥

欸不对有要更的
今天 huge 回来力 😋
和我们简单聊了会暑假最后一周的安排
本来我以为是强制的奥赛集体 whk
结果 huge 还说想给我们点假
抛开其他因素不谈,我们至少在假期时长方面完爆上届学长
要是 23 号回去确实没必要
多放两天就挺不错的 🥰
反正看到 whk 有余地果断弃掉这个选项

不过这么一聊就觉得快到了
结果还有四天的模拟赛(
啥时候模拟赛能打好点呢……

8.19

上午

好像最后几场模拟赛确实应该好好对待一下
但是实力不允许

t1 签到,打完发现连小样例都过不去
发现我连样例都没摸明白,想找他要个样例解释
过了几分钟脑子抽了自己脑补出来了个不知道什么玩意
和他说不用那个解释了
结果没几秒就有弹窗说 t1 题面锅了 😅
t2 不会,打的指数级暴力,感觉贪心不太对的样子
t3 smjb
要是总刻意的避开一类题,到时候连部分分都打不明白就 6 了
……你怎么知道我连暴力也不会
t4 打的 1e9 进制大模拟,但是 TLE 与 MLE 并存,大概能有 30pts?

下午

省流:没挂分

t2 乱搞题,贪心 90 模拟退火直接过了
t4 x 互不相同的部分分咋不会啊,恼了

改题改题改题……

先是听 int_R 说化学要强制上 whk
然后又看到几个教练在办公室里讨论点什么东西

果然啊,果然
huge 直接过来和我们说
“强烈建议大家去听一下”
但是
“会把机房门锁了”

好好好,这么玩十八(

8.20

上午

困得要死
今天晚上再不睡觉就和他们同归于尽!!!1 😡

t1 没啥说的,不过我刚知道主席树貌似不能区间修改?
不到啊但是我觉得分块挺对,他不给大样例那十有八九是寄了,www 又要签到挂分了(
t2 不懂啊,就算 tarjan 可做我也不记得咋打了
不知道干啥反正俩小时之后开始打暴力敲了一百多行愣是没搞明白
t3 ???欸好像我没打暴力不过就这样吧,只会朴素暴力打了也好不到哪去
t4 本来想着二分再贪个心啥的,但是数据范围放 1000 那指定要 dp 还是什么别的,直接 cout<<a[2]-a[1] 然后摆

感觉把模拟赛爆炸归到睡眠质量上不太好
但是什么唐诗打个模拟赛挂这老些分
一困就啥也不想思考,睡还睡不踏实
下午改题还看不进去题解
恼恼恼 😡

艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹艹
t1 没挂,乐
t2 先存 lun 边 + 跑 tarjan + 生成树
我 tm 除了 tarjan 之外啥都写了,用 tarjan 的部分直接暴力判环
原因是根本不会,想到的时候直接弃了
nnd 没想到 spj 里有,打个暴力连样例都没测就直接交了

不出所料的唐诗代码
#include<bits/stdc++.h>
using namespace std;
const int N=2e5+10,M=11;
int n,m,mp[M][M],flag;
int fa[N];
string s;
vector<pair<int,int>>v;
struct edge
{
	int u,v,k;
}e[N];
inline int find(int x)
{
	if(fa[x]==x)
		return x;
	return fa[x]=find(fa[x]);
}
inline bool dfs(int x,int st)
{
	int res=0;
	for(int i=1;i<=n;i++)
		if(mp[x][i])
		{
			if(i==st)
				return 1;
			mp[i][x]=0;
			res|=dfs(i,st);
			mp[i][x]=1;
		}
	return res;
}
int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);
	cin>>n>>m;
	for(int i=1;i<=m;i++)
	{
		cin>>e[i].u>>e[i].v>>s;
		if(s=="Lun")
			e[i].k=1;
		else
			e[i].k=flag=2;
	}
	if(m<=20)
	{
		for(int i=1;i<=(1<<m)-1;i++)
		{
			for(int j=1;j<=n;j++)
				fa[j]=j;
			for(int j=1;j<=m;j++)
				if(i&(1<<j-1))
					mp[e[j].u][e[j].v]=mp[e[j].v][e[j].u]=e[j].k;
				else
					mp[e[j].u][e[j].v]=mp[e[j].v][e[j].u]=0;
			for(int j=1;j<=m;j++)
			{
				if(e[j].k!=1||!(i&(1<<j-1)))
					continue;
				mp[e[j].u][e[j].v]=0;
				if(!dfs(e[j].u,e[j].v))
				{
					cout<<"NO\n";
					return 0;
				}
				mp[e[j].u][e[j].v]=1;
			}
			for(int j=1;j<=m;j++)
			{
				if(e[j].k!=1||!(i&(1<<j-1)))
					continue;
				fa[find(e[j].u)]=find(e[j].v);
				v.push_back({e[j].u,e[j].v});
			}
			for(int j=1;j<=m;j++)
			{
				if(e[i].k==1||!(i&(1<<j-1)))
					continue;
				if(find(e[i].u)==find(e[i].v))
					continue;
				fa[find(e[i].u)]=find(e[i].v);
				v.push_back({e[i].u,e[i].v});
			}
			int vis=0;
			for(int j=2;j<=n;j++)
				if(find(1)!=find(j))
					vis=1;
			if(vis)
			{
				v.clear();
				continue;
			}
			cout<<"YES\n";
			cout<<v.size()<<"\n";
			for(auto it : v)
				cout<<it.first<<" "<<it.second<<"\n";
			return 0;
		}
		cout<<"NO\n";
	}
	else if(flag)
	{
		for(int i=1;i<=m;i++)
			if(find(e[i].u)!=find(e[i].v))
			{
				fa[fa[e[i].u]]=fa[e[i].v];
				v.push_back({e[i].u,e[i].v});
			}
		cout<<"YES\n";
		cout<<v.size()<<"\n";
		for(auto it : v)
			cout<<it.first<<" "<<it.second<<"\n";
	}
	else
		cout<<"NO\n";
	return 0;
}

不想细讲直接看 挂分记录

t3 看反正我其他题也不会,就懒得想 dp 部分分,直接搜的(
t4 ?为啥我 cout<<abs(a[2]-a[1]); 不对!!1

下午

中午睡觉之前想让我妈帮我买个火车票
昨天还说看我自己呢
谁知道她今天就变卦了

说什么……
  • 不拿金牌学奥赛就没意义,没实力还不多学点 whk

  • 早上刚从 DZの麻麻 那里听说可以上奥赛到 27 号

  • 天天在学校给教练惹事就别和教练提请假了

  • 什么都要跟着学校的要求走

难绷 😅
后来听 DZ 说才知道就是消息过于落后了(
起床宿舍电话用不了还只能去机房找 guge 要手机
反正是大概定下来 24 一早走

让我唐完了
改个 t2 写个 t1 的主席树版本一下午就过去了?
t3 只是懂了个大概(
以后一定找个没人需要调题的时候转悠!!1

突然发现好久没放图了

8.21

上午


前天是后两个小时困得要死
昨天是中间两个小时困得要死
今天是前两个小时困得要死
恼了

昨天明明直接睡的来着
今天不知道为啥先困了俩小时

省流:给大黄垫底了

t1 先想到点分治然后再想到用异或哈希去维护那个东西
结果复杂度不对 😥,啥时候能有个 map 类的东西是严格 O(1) 的就好了
我是不是先想到异或哈希就能过先放一边
为啥有人 nlogn 能过 60pts 然后我只配和暴力坐一桌 😅😅😅
说人话就是用着 100pts 的思路,写着 60pts 的代码,拿着 30pts 的暴力分

t2 转移因为 nk 和 nklogn 没啥区别所以用线段树维护的转移
反正到处锅锅锅
赛时改了个完全没有道理的地方然后把样例过了

当时应该想的

欸这么写是不是哪里不太对

实际上的

好耶,终于不用调了!!!1

t3 感觉直接贪心搜一遍的话数据范围不该这样,摆了
哎,虽然被数据范围诈骗了,但确实没想到最上面的点还能随便找个连通块和进去 😥

t4 普及- 难度的暴力锅了,望周知 😋

下午

改了 t3 就没干啥事了
t4 感觉不是很好实现,t2 分讨我也不是很能写,而且现在都没搞很明白

晚上随便搞搞 t4
能写多少是多少吧(

upd:几乎啥也没写成,去听 aqr 那天晚上小故事的番外了(

8.22

上午

这次不困了奥
所以事实证明我唐和睡眠质量没半毛钱关系

\(\color{white}{今天晚上 12 点前睡着算我输}\)

因为不管咋样我都会想正解到最后 1h 再开始打暴力
如果没想到的话其实就和睡觉没啥区别 🤣👉🤡

t1 签到没挂分,乐
t2 不会推式子,这些题都给我死!!!1 😡

md 但是我 $O(2^n)$ 的暴力打锅了
dfs(x+1,val+a[x]%mod,gl*p[x]%mod);
dfs(x+1,val+b[x]%mod,gl*(1-p[x]+mod)%mod);

你怎么知道这题特判大样例还有 20pts 😅

t3 没懂,写的哈希,实际上只看时间的话能有 50pts?
但是我没记每个串的状态,删东西没减直接除的 base
结果这玩意在模意义下不太能用???
反正似乐 😥
……
你怎么知道这题我做过原
但是忘了 AC 自动机咋打 😭

t4 树剖+主席树+二分 秒了
写完了发现那个每个同学有俩礼物原来搁这卡我呢
直接暴力然后我这么打只有特殊性质的 10pts ?
你说得对,然后我咋改改不出来,恼了!!!1
赛后发现暴力能顺手把特殊性质的 10pts 拿了???、

点击查看代码
#include<bits/stdc++.h>
using namespace std;
const int N=5e5+10;
int n,m,a[N],cnt,tot;
int rt[N],t[N<<5],ls[N<<5],rs[N<<5];
int fa[N],dep[N],siz[N],son[N],dfn[N],top[N];
vector<int>v[N],g1,g2;
inline void modify(int &x,int y,int l,int r,int v)
{
	t[x=++tot]=t[y];
	ls[x]=ls[y],rs[x]=rs[y];
	if(l==r)
	{
		t[x]++;
		return ;
	}
	int mid=l+r>>1;
	if(v<=mid)
		modify(ls[x],ls[y],l,mid,v);
	else
		modify(rs[x],rs[y],mid+1,r,v);
	t[x]=t[ls[x]]+t[rs[x]];
	return ;
}
inline void dfs1(int x,int fath)
{
	fa[x]=fath;
	dep[x]=dep[fath]+1;
	siz[x]=1;
	for(auto y : v[x])
		if(y!=fath)
		{
			dfs1(y,x);
			siz[x]+=siz[y];
			if(siz[y]>siz[son[x]])
				son[x]=y;
		}
	return ;
}
inline void dfs2(int x,int topf)
{
	dfn[x]=++cnt;
	top[x]=topf;
	modify(rt[cnt],rt[cnt-1],1,n,a[x]);
	if(son[x])
		dfs2(son[x],topf);
	for(auto y : v[x])
		if(y!=fa[x]&&y!=son[x])
			dfs2(y,y);
	return ;
}
inline int query(int l,int r,int v)
{
	if(l==r)
	{
		int res=0;
		for(auto it : g1)
			res-=t[it];
		for(auto it : g2)
			res+=t[it];
		return res;
	}
	int mid=l+r>>1;
	if(v<=mid)
	{
		for(int i=0;i<g1.size();i++)
		{
			g1[i]=ls[g1[i]];
			g2[i]=ls[g2[i]];
		}
		return query(l,mid,v);
	}
	for(int i=0;i<g1.size();i++)
	{
		g1[i]=rs[g1[i]];
		g2[i]=rs[g2[i]];
	}
	return query(mid+1,r,v);
}
inline bool lca(int x,int y,int k)
{
	g1.clear();
	g2.clear();
	while(top[x]!=top[y])
	{
		if(dep[fa[top[x]]]<dep[fa[top[y]]])
			swap(x,y);
		g1.push_back(dfn[top[x]]);
		g2.push_back(dfn[x]);
		x=fa[top[x]];
	}
	if(dep[x]>dep[y])
		swap(x,y);
	g1.push_back(dfn[x]);
	g2.push_back(dfn[y]);
	return query(1,n,k)==0;
}
inline int split(int x,int y)
{
	for(int i=1;i<=n;i++)
		if(lca(x,y,i))
			return i;
}
int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);
	cin>>n>>m;
	for(int i=1;i<=n;i++)
		cin>>a[i];
	for(int i=2,x,y;i<=n;i++)
	{
		cin>>x>>y;
		v[x].push_back(y);
		v[y].push_back(x);
	}
	dfs1(1,0);
	dfs2(1,1);
	for(int i=1,l,r;i<=m;i++)
	{
		cin>>l>>r;
		cout<<split(l,r)<<"\n";
	}
	return 0;
}

不是哥们三场了
啥题乱搞得的分多我不打啥题十八(

下午

题改不动一点
看了半天 ac 自动机的东西
感觉自己全忘了
啥也没干半天就过去了
这还不如颓会(

因为要报 csp 所以开的全网
但是好像干不了啥 我总不能直接打开云原神吧

一下午最有意思的就是 oj 里的一言能用了

但是刷几个就又出不来了 😥

没写啥就放张图吧

image

。暑假要结束了的样子……

完结撒花 ★,°:.☆( ̄▽ ̄)/$:.°★

posted @ 2024-08-05 20:43  lxyt-415x  阅读(551)  评论(82编辑  收藏  举报