A. Graph Games
B. Crazy Binary String
简单签到,但我居然wa了两发,,,,来自F0_0H的自责
C. Guessing ETT
D. Big Integer
solved by sdcgvhgj, assisted by rdc 92min -3
题意 求满足 (n=i^j), (frac{(10^n-1)}{9}\%p=0) 的正整数有序对 ((i,j)) 数,(i leq c_1, jleq c_2)
做法
- (10^n \% 9p=0),(n|phi(9p))
- 枚举 (n) 求极小循环节。
- 枚举 (j),同时可以发现 (j>40) 后,开始划水。
复盘 比赛时的做法,应该是要 WA 的。
- 先打表猜测最小正周期大部分一定是 (p-1) 的因子【假了】
- 用矩阵快速幂递推求 (a_n) 【.....】
- 然后 WA。
- 发现有些时间最小正周期不太对劲,开始不断加 corner case。
F. Planting Trees
solved by rdc 233min -1
题意 求极大子矩阵,极差小于等于 (m)
做法 枚举上下界后转化为序列上的问题。两个单调队列一个维护区间最大,一个维护区间最小即可。单调队列写得太烂,耽误了太多时间。
G. Removing Stones
solved by rdc 163min
题意 查询多少个区间,(2*mx leq sum+1)
做法
- 正难则反,考虑 (2*mx > sum+1) 的区间数
- 考虑元素 (a[x]) 是极大且 (2mx>sum+1) 的区间,确定极大的有界。
- 尺取!复杂度 (O(不会证)),猜和 log 元素上界,有关。
H. Magic Line
solved by sdcgvhgj 45min
题意 求一条直线将点分成个数相等的两半
做法 随机选点,极角排序,中间两点不共线则成功。
题解做法 按 x,y 双关键字排序,在一半的位置画一条斜率极大的直线。
I. Median
upsolved by rdc
题意 给出 (a) 序列,(a_1,a_2,....a_n) 构造 (b) 序列,(b_1,b_2....,b_{n+2}) 使得 (mid(b_i,b_{i+1},b_{i+2})=a_i)
做法
- 观察到,若解存在,必存在一组解使得 (b_i ∈ {a_{i-2},a_{i-1},a_{i}})
- 考虑 DP,(dp[i][x][y]) 表示 (b_{i}=a_x, b_{i-1}=a_y) 是否能够合法。
- 决策 (b_{i+1}) 填什么。DP 记录前趋。
- MLE 了好多发,pair 套 pair 解体了。
J. LRU management
solved by F0_0H 170min -5
题意 有点长,看懂题意就能写的题
题解 开多个数组记录标记,左兄弟,右兄弟即可,然后我就被各种看错数据范围wa到自闭