Codeforces Round #180 (Div. 1 + Div. 2)

A. Snow Footprints

  • 如果只有L或者只有R,那么起点和终点都在边界上,否则在两者的边界。

B. Sail

  • 每次根据移动后的曼哈顿距离来判断是否移动。

C. Parity Game

  • 如果当前1的个数是偶数,则1的个数不会再增加;如果是奇数,则加1后不会再增加。
  • 当前串可以组合成任意种组合,组合中的1不超过最大值。

D. Fish Weight

  • (Diff = sum{dicdot wi})
  • 假设(w_1+=dw),因为有(0<w_1<=w_2<=cdots<=w_n),所以对于所有(1<i,w_i+=dw),此时(w_1)的贡献=(dwcdotsum{d_i})
  • 同理,推得(w_i)的贡献为$$dw_icdotsum_{j=i}^{n}{d_j}$$
  • 当存在(sum_{j=i}^{n}{d_j}>0)时,可设对应(dw_i)为无穷大,即可使结果为正数。

E. Splitting the Uniqueness


D. Color the Carpet

  • 同一行的限制用两种颜色就满足。
  • 不同行之间的限制要么小于一半,要么大于一半。小于一半时,颠倒颜色即可变成大于一半。
  • 上面两种操作即可满足(frac{3}{4})的这个条件。

E. Mystic Carvings

  • 3个区间的相交情况一共只有5种情况,其中两种合法:两两不相交和两两都相交。
  • 0个交点且不合法的方案是形成“三”字形,这种情况我们可以枚举中间的区间,那么此时会包含另外的某个区间,也就是如果我们统计出被中间区间包含的区间个数以及与中间区间相交的区间个数,就可以计算这种方案的数量。
  • 1个交点和2个交点且不合法的方案,可以枚举有交点的一个区间,可以统计与当前区间相交的区间数量,剩下可以计算与当前区间不相交的数量(此时这些区间可能与第二条不相交,即1个交点或与第二条相交,即2个交点)。注意方案会重复计数,所以最后需要除以2。
原文地址:https://www.cnblogs.com/mcginn/p/6291396.html