您的位置:首页 > 其它

Codeforces Round #313 (Div. 2)

2015-08-08 16:15 302 查看
div2 都过不了 TAT

A. Currency System in Geraldion

贪心发现,当且仅当没有1元时是-1,否则是1。

B. Gerald is into Art

一个小bug,WA了好多次。

贪心地放就可以啦。

C. Gerald's Hexagon

就是一个正六边形裁去三个角。

D. Equivalent Strings

不忍直视。

def f(x):
if len(x) & 1: return x
a, b = f(x[:len(x) / 2]), f(x[-len(x) / 2:])
return a + b if a < b else b + a
print ['NO', 'YES'][f(raw_input()) == f(raw_input())]

E. Gerald and Giant Chess

经典DP的加强版,好题。

设dp(i)为安全走到第i个障碍的方案数量,calc(w,h)为大小为(w,h)的没有障碍的棋盘从(1,1)到(w,h)的方案数。

那么\[dp(i) = calc(x_i, y_i) - \sum_{j(x_i \geq x_j , y_i \geq y_j)} {calc(x_i - x_j + 1, y_i - y_j + 1)}\]

这里的j就是不合法路径遇到的第一个障碍。

我们显然可以安排一个没有后效性的DP! 然后就秒了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: