Codeforces Round #134 (Div. 2)
A. Mountain Scenery
- 枚举山顶位置,满足\(r_{i-1} \lt r_i - 1 \gt r_{i+1}\)。
- 范围要开\(2N\)。
B. Airport
- 优先队列维护最值。
C. Ice Skating
- 并查集维护连通点集。
D. Blackboard Fibonacci
- 根据$$gcd(a,b)=gcd(a+b, b)$$这个性质,可以发现最后的两个值互质。
- 枚举\(x \in [1, r)\),满足\(gcd(x,r)==1\),同时\(O(\log N)\)逆推回\((1,1)\)状态,计算步数以及错误数。
- 因为起始操作总是\(T\),所以需要判断第2步操作跟\(T\)是否相同。
E. Formurosa
- 对于每个\(s\)来说,维护4个信息:
- \(g_0\)表示是否能够得到0;
- \(g_1\)表示是否能够得到1;
- \(g_e\)表示\(s(x)==x,x=0\ or\ 1\);
- \(g_n\)表示\(s(x)==x\oplus 1,x=0\ or\ 1\)。
- 假设当前运算符为\(|\),那么
g0 = (l.g0 && r.g0);
g1 = (l.g1 && r.g1) || (l.ge && r.ge) || (l.ge && r.gn) || (l.gn && r.gn);