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

A. Yaroslav and Permutations

  • 值相同的个数不能超过\(\lfloor \frac{n + 1}{2} \rfloor\)

B. Yaroslav and Two Strings

  • 答案=总方案数-(S<=W)的方案-(W<=S)的方案+(W==S)的方案。

C. Greg and Array

  • 线段树统计每个操作的使用次数,后面就是普通区间加的线段树操作。

D. Greg and Graph

  • 反过来操作,即每次加一个点,然后更新距离和。
  • 先计算新点到其他点的最短距离,然后就是floyd的加点更新。

E. Greg and Friends

  • \(g(i,j,k)\)表示有i个50kg,j个100kg,船在k岸的最小次数。
  • 按照次数的大小关系,可以计算相应的方案数。

###


E. Yaroslav and Points

  • 考虑每个值的贡献,相当于维护\(\sum{i\cdot x_i}\),线段树。
posted @ 2017-04-24 09:54  mcginn  阅读(154)  评论(0编辑  收藏  举报