Codeforces Round #134 (Div. 2)

时间:2023-03-08 16:18:46

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个信息:
  1. \(g_0\)表示是否能够得到0;
  2. \(g_1\)表示是否能够得到1;
  3. \(g_e\)表示\(s(x)==x,x=0\ or\ 1\);
  4. \(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);