10.7 模拟赛
前言
业精于勤荒于嬉,行成于思毁于随
正文(模拟赛)
卦象:吉
感受:T1 15min 写完,T2 一直到比赛结束都没有想出来,全剧终
赛后发现获得 90pts,T1 挂了,只剩 60 pts,T2 乱搞贪心只有 30pts
瞄了眼 T3,简单主席树板子题;然后看 T4,又是杜教筛板子题
国庆这几天,模拟赛的分数如流星一般,呼啸着划过天幕,向着地平线坠去
也许地平线不是我的下界,只是比赛分数的定义域为非负整数……
T1
考虑什么样的子图会造成贡献,最终发现只有菊花图和三元环
哦,然后三元环不知道为什么莫名其妙寄了,赛后更换了判断方式,40min 后才 AC
T2
陷入思维定式的 \(2^S\),只想着状压集合,没想着状压点灯顺序的排列,影响范围 \(\le 7\) 的数据范围还是太灵性了
剩下的就没什么了,把排列预处理出来,\(i \to i+1\) 转移的时候枚举位置,然后删点时计算贡献并转移
啧,据说还有模拟退火做法,不过这个做法目前只有 80pts……
T3
相当于删一个点,然后对值域上两个区间递归去做
把值域当做下标 rev
数组当做序列权值,相当于求区间第“一半区间长度”小
简单主席树维护(写的时候没有 pushup
,虚空调试 2h)
T4
哦,原来是数论题,计算:
\[\sum_{a=1}^{n} \sum_{b=1}^{n} \sum_{c=1}^{n} \sum_{d=1}^{n} [ac=bd]
\]
内部的 \(ac=bd\) 是类似反比例函数的形式,有点抽象,不妨移项变成正比例函数的形式,即:
\[\frac{a}{b} = \frac{d}{c}
\]
相当于在 \(n\times n\) 的点,枚举所有过原点的直线,一条直线对答案的贡献是直线所经过的整点数目的平方
简单来说,答案可以写作
\[\sum_{i=1}^{n} \sum_{j=1}^{n} [\gcd(i,j)=1] \Big\lfloor \frac{n}{\max(i,j)} \Big\rfloor^2
\]
就这坨玩意,可以把 \(\max\) 去掉,因为 \(i,j\) 地位是等价的,即
\[2 \Big( \sum_{i=1}^{n} \Big\lfloor \frac{n}{i} \Big\rfloor^2 \varphi(i) \Big) - n^2
\]
\(n\) 较小就线性筛,\(n\) 较大就杜教筛,没了
小结
再美的流星终究会坠落……
后记
世界孤立我任它奚落
完结撒花!