noi2021题目分析大纲

Posted Flame♡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了noi2021题目分析大纲相关的知识,希望对你有一定的参考价值。

写在前面
金牌线 393
银牌线 205
100银 282

文章目录

day1T1

据说有类似原题

染色[SDOI2011]

n , m < = 5000 n,m<=5000 n,m<=5000

暴力标记
喜提30

A , B / A A,B/A A,B/A

区间修改+单点修改+区间查询线段树
喜提20

B B B

树剖线段树维护标记

因为查询点必定为父子关系,所以考虑把操作1换成区间修改的“修改的最晚时间是什么”

查询的时候只要考虑这两个点的最晚修改时间是否相同

(其实这个是和正解最接近的部分分)

喜提20

n , m < = 2 e 4 n,m<=2e4 n,m<=2e4

不知名log^3做法(并没有找到也没有想到什么参考)

估计是给正解常数大的人

10pts

n , m < = 1 e 5 n,m<=1e5 n,m<=1e5

树剖线段树,维护区间左边颜色,区间右边颜色,区间内重边数目

20pts

day1T2

(吐槽)据说是过了一车人的LGV,不过…

据说和CF167E大致相同

CF167E

很容易观察到题目考察的内容——交点数的奇偶性——只与两条路径的起点与终点有关系。

如果起点是1,2,3,…n,终点是 p 1 , p 2 , p 3 . . . p n p_1,p_2,p_3...p_n p1,p2,p3...pn

那么交点数的奇偶性就是 p 1 − n p_1-n p1n 的逆序对数

k = = 2 k==2 k==2

邻接矩阵的行列式的答案

35pts

B B B

(感觉意思就是保证每一层的节点数都是1)

20pts

n < = 10 n<=10 n<=10

估计是乱出的,我感觉它是想出个 2 10 ∗ 2 10 2^10*2^10 210210的dp,然后数据范围出错了…(但是砍掉一半好像也没法做)

咨询了一些人 姑且把它当做乱出处理了
不包含AB,10pts (是不是给正解数组开小的人的)

n 1 = n 2 = . . . = n k / A n_1=n_2=...=n_k/A n1=n2=...=nk/A

行列式的值乘起来

(已经和正解非常接近了qwq)

(没有计算包含B的) 20pts

正解

乘起来的行列式/或者说lGV定理 不过如果是从上面的部分分推过来的话,其实可能会跳过LGV这一步

至于为什么行列式乘起来不对:喂喂,你的行列式是正方形耶…

但是不同的点数之间可能会出现长方形

20pts

day1T3

注意到题目只考虑可达性 因此要考虑缩点

自闭了我读错题了 我一直以为 加的两条边是可以钦定的 没想到是题目给定的 我恨…

所以我的那个new idea是不是可以出题之类的)

n , q < = 5 , k = 0 / n < = 1000 n,q<=5,k=0/n<=1000 n,q<=5,k=0/n<=1000

考虑 一个点合法 当且仅当正向的时候 这个点能被 s s s 走到

边反向之后 这个点能被 t t t 走到

标记一下就好

复杂度应该是 m q mq mq,但是就是可以冲过去)

28pts

m = n − 1 m=n-1 m=n1

首先 这个条件转换完之后 是一颗外向树

具体来说 因为题目保证联通,又有一个限制,如果 x , y x,y x,y可以到达 z z z 那么x可以到 y y y 或者 y y y 可以到 z z z

也就是说 到达一个点会出现两种方式

如果出现这种情况 n − 1 n-1 n1 条边会不够用

因此是外向树

在这个条件下

k = 0 k=0 k=0

直接统计 8pts

k = 1 k=1 k=1

8pts

k = 2 k=2 k=2

12pts

贴一个分讨的做法…就不人工手写了(主要还是因为看错题了所以非常悲伤)


这里放一个 当k可以钦定时的想法

k=1

分类讨论一下

d [ x ] d[x] d[x]表示x的深度

如果 s , t s,t s,t是父子关系

如果 s s s 是子节点 那么从 s s s 往下最长链的叶子处 连一条边到根节点一定最优(答案是 s s s子树内的最长链+ d [ s ] d[s] d[s]

如果 t t t 是子节点 答案是max( s , t s,t s,t路径上的点,不经过 s , t s,t s,t路径的最长链)+ d [ t ] d[t] d[t]

否则 是 s s s子树内的最长链+ d [ t ] d[t] d[t]

维护的时候应该需要记录一下最长链,次长链,以及条数

k=2?


正解

所有做法的基础:

做法1: 结合外向树做法分类讨论

做法2: 结合暴力虚树

注意 要写 O ( 1 ) O(1) O(1) lca,不然会卡常到明年…

day2T1

数据点 1,3

bitset+unoerdered_map
O ( 25 6 k + 1   l o g   q ) O(256^k+1~log~q) O(256k+1 log q)
8pts
乱搞做法:(据说 没有深究正确性)

枚举有几位不一样 ,然后在trie上跑(也许可以多过几个k比价小的点)

复杂度是在 O ( 25 6 k q ) O(256^kq) O(256kq)左右(吧)

数据点 8,9

思路大致和上面相同 不过因为k=1,改成hash
8pts

正解

抽屉原理,转成16组,1<<16进制

day2T2

n , q < = 2000 n,q<=2000 n,q<=2000

暴力直接做

20pts

A A A

注意 F和R都会改变操作序列

所以意思就是F,R也不会使得操作序列出现连续相同段

所以可能出现的序列只有两种:

W E W E W E . . . WEWEWE... W以上是关于noi2021题目分析大纲的主要内容,如果未能解决你的问题,请参考以下文章

bzoj1495[NOI2006]网络收费 暴力+树形背包dp

UOJ#126NOI2013快餐店

[Noi2015]软件包管理器 题解

Noi2018 归途

[bzoj3669][Noi2014]魔法森林_LCT_并查集

P1955 [NOI2015] 程序自动分析