zoukankan      html  css  js  c++  java
  • [游记]WC2021游记

    Part 1 游记部分

    Julian ???

    在学校的时候教练让大家报名,本着不会也要当炮灰的原则填了报名表

    Julian ???

    放了寒假,给班主任请了假开始自己在家突击一些完全没有考到的新知识点,看了点历年题觉得十分不可做,于是每天就颓颓颓(

    Julian 2459247

    早上的开幕式很水,说好的8:00-8:30结果讲了几分钟就没了(截了一张 dzd 讲话的图作纪念)
    上来就是随机化算法什么的,神游了一上午只记住了蒙特卡洛和拉斯维加斯
    结果下午 zyy 上来就说随机化算法没有前途成为经典(
    没几个听懂的题,继续神游
    晚上的员交很好玩,每个字都能听懂。

    Julian 2459248

    老师把课件发下来之后觉得要有英语听力了,不过幸好讲的还是汉语(((
    收获:MoooOoOMooooooMooOOoOMoOooOOMooooooMoOooOoMoOOooo
    下午的 jmr 听起来很沙雕233333

    Julian 2459249

    一堆奇奇怪怪的数学题,继续神游
    下午的行列式杀疯了(

    Julian 2459250

    上午自信满满觉得能听懂一点,结果马上被希腊语反过来吊打
    下午的并行计算也很好玩,但是感觉对目前的比赛没什么用
    明天就考试了,调整一下心态,看了几个板子就睡觉了
    题外话:之前一到宣传片我就静音,结果看到有人刷什么加边加边加边很迷惑,直到我偶然看完了宣传片……

    Julian 2459251

    注:作者所在省(SD)是线下测试
    早上早起去比赛学校,进去就直接让抽号试机了(抽到了2-54)
    考场有个 xxs 非常申必地在那喊,具体可以参见此贴:【淼】谷甚论冬眠营神仙小学生
    然后开始冬眠打开题面浏览了一下三个题,发现 T3 的疑似出题人。本着先拿暴力分的原则直奔部分分最足的 T2。
    打了一会惊觉不会打表达式树了(普及算法啊啊啊),所以自己口胡了一个奇奇怪怪的算法过了样例3
    结果样例3太水考完试才发现程序不能处理形如((0))的式子啊啊啊啊啊啊啊(这是后话,然而仁慈的 €€£ 还是给我留了50分)
    又加了个大爆搜来处理问号,很明显得不到一点分
    之后又去看 T3,打个暴力观察了一下,没发现循环节有什么性质并且误以为循环节长度在(m)为质数时(le m)
    所以最后就开始乱搞判无解的做法,能过掉小小小小小样例
    十点多去开 T1,爆搜打完了才发现点可以重复访问很多次,于是瞬间假掉,之后也没再想出什么优雅的解法就交了个错的暴力(谢天谢地 €€£ 又留了16分)
    之后的大部分时间在三个题反复横跳,但是并没有搞出什么新解法,于是开始写一些申必的注释,默写了一遍加边语录(假设有 l 到 r,这是 l,这是 r。这些边我不加。这些边我不加!暴力怎么做?暴力是不是!加边,加边,加边,然后,并查集查询。),又尝试默写了美国五十州结果发现背不全(
    过了一会发现装在兜里的巧克力它 全 化 了 !感觉很自闭,于是出去接了点水逛一圈
    快完了的时候很无聊,突然想起 win10 没有自带扫雷,于是就继续冬眠
    下午回家听讲解,发现 T1 竟是直接申必加边加边加边并查集查询,顿时觉得自己十分申必并且要丝滑拿铁了(这时发现了 €€£ 宣传片泄题的真相)
    T2 讲题人说括号可能有无端套娃,觉得自己要抱灵了
    晚上休整了一下,看了看 LA 群里的 Au 爷还在不断 fAKe,决定睡觉

    Julian 2459252

    上午有好玩的答辩,那当然是要看一下的了
    结果 dzd 一直在问迷惑问题,搞得选手很害怕(((
    下午闭幕式很紧张,觉得会出现全校除我全 Au 的尴尬境况
    公布了分数线之后十分自闭,群里发的 SD 成绩也没敢点开
    那个主持人就从那念了八百多个人名
    突然发现自己卡线 Cu 了,觉得很不可思议,继续静等 Au 爷名单
    AK 爷 djq 强强
    然后就结束了。
    收获一:假设有 l 到 r,这是 l,这是 r。这些边我不加。(小声)这些边我不加!(大声)暴力怎么做?暴力是不是!加边,加边,加边,然后,【并查集】查询。
    收获二:你要干什么,你要去哦(大声)分找它的前驱和后继。

    Julian 2459254

    写下了这篇游记。

    Part 2 题解部分

    T1 括号路径

    我们规定([u,v])表示(u,v)之间存在合法路径,那么很显然有([u,v]Leftrightarrow [v,u])
    接下来我们考虑什么时候两个点之间存在合法路径。我们先来考虑最简单的隔一个点的情况,如图:
    ajh
    可以发现,当(v)有两条相同类型的左括号入边时,会出现一条从(u)(w)的合法路径。
    那么我们不禁要想,如果有多条这样的入边,那么这些边连接的点都是互相可达的。
    如何维护这种互相可达的关系呢?没错,就是加边加边加边并查集!
    具体地,使用并查集维护能互相到达的点,使得集合之间均不可达,那么我们用每个集合的大小即可求出答案。

    T2

    未完待续(其实是咕了!)

    内容来自_ajhfff_的博客(https://www.cnblogs.com/juruoajh/),未经允许,不得转载。
  • 相关阅读:
    linux 短信收发
    sama5d3 环境检测 adc测试
    【Codeforces 723C】Polycarp at the Radio 贪心
    【Codeforces 723B】Text Document Analysis 模拟
    【USACO 2.2】Preface Numbering (找规律)
    【Codeforces 722C】Destroying Array (数据结构、set)
    【USACO 2.1】Hamming Codes
    【USACO 2.1】Healthy Holsteins
    【USACO 2.1】Sorting A Three-Valued Sequence
    【USACO 2.1】Ordered Fractions
  • 原文地址:https://www.cnblogs.com/juruoajh/p/14389742.html
Copyright © 2011-2022 走看看