题号 | 名称 | 难度定位 | 知识点 |
---|---|---|---|
A | 兔子的区间密码 | 签到 | 构造、脑洞 |
B | 猴子排序的期望 | 签到 | 高精度、组合数学 |
C | XOR | 中档题 | 数位dp |
D | vcd | 中档题 | 树状数组 |
E | Counting On A Tree Again | 难题 | big-small、dfs、树 |
F | 导一导 | 难题 | 高等数学、FFT |
导一导
牛顿——莱布尼兹公式:
(
u
v
)
(
n
)
=
∑
i
=
0
n
(
n
i
)
u
(
i
)
v
(
n
−
i
)
(uv)^{(n)} = \sum_{i=0}^n \binom{n}{i} u^{(i)} v^{(n-i)}
(uv)(n)=i=0∑n(in)u(i)v(n−i)
vcd
多于三个点肯定不行,还发现如果有两个点y坐标相同也不行。
那么一个点的情况肯定就是 n n n,两个点只要保证y坐标不同就行了。三个点的话,分析一下,发现必须是中间的点x坐标最小。
猴子排序的期望
可重复元素排列组合,高精度
XOR
四进制,数位dp
兔子的区间密码
从最高位开始比较L和R,直到发现从某一位开始不同,假设是从第i为开始不同的,那么答案的二进制就是i个1
因为我完全可以构造10…00(i-1个0)和011…11(i-1)个1
Counting On A Tree Again
如果一种颜色的节点数超过了 n \sqrt n n,就在 O ( n ) O(n) O(n)的时间内处理这类询问
如果节点数小于 n \sqrt n n,就在 O ( q ) O(q) O(q)的时间内处理这类询问
总时间复杂度 O ( ( n + q ) n ) O( (n+q)\sqrt n ) O((n+q)n)
题目链接
A题:https://ac.nowcoder.com/acm/problem/20860
B题:https://ac.nowcoder.com/acm/problem/15825
C题:https://ac.nowcoder.com/acm/problem/25731
D题:https://ac.nowcoder.com/acm/problem/17423
E题:https://ac.nowcoder.com/acm/problem/15541
F题:https://ac.nowcoder.com/acm/problem/15075