您的位置:首页 > 其它

Codeforces Round #199 (Div. 2)

2013-09-07 21:00 405 查看
A题挂了,B题WA了4发, C题1A, 比赛结束, D题赛后1A了。 小号变紫了。

A. 仔细看题, 所有数都小于等于7,所以只有1 2 4, 1 2 6, 1 3 6 三种情况,

如果出现5,7就是-1, 否则 cnt[1] = n/3,cnt[2] - cnt[4] == cnt[6] - cnt[3] 而且 cnt[2] - cnt[4] >= 0

我错在出现5,7的情况没考虑,手速太快了,悲剧。

code

B.贪心,能走一步就走, 注意时间是1e9范围,但总移动次数为n(1e5),所以对于相邻的时间内,有一段时间是肯定可以移动的,移动, 然后在对当前时间点移动。
最后要注意所有时间走完以后可能没有到终点, 在一直移动就可以了。

code

C小的计算题, 先放下面的长方体, 个数为h/r*2, h变为h%r,  之后根据h的大小可以放1个或2个或3个。

h < r/2: 1 个;   h >= r/2 && h < sqrt(3)/2*r : 2 个;  h >= sqrt(3)/2*r   3个

code

D有一个范围很小,是3,所以可以状态压缩dp做。 以n为行, 3为列,dfs即可。

赛后一开始就A了,后来一讨论发现数据水了, 没有O的8个方向上有X的数据,所以我的算法水过了,

现在修正了。我用暴力+容斥AC的,对于对着O的骨牌最多只用三个。

我们可以    +对着1个骨牌的 - 对着2个骨牌的 + 对着3个骨牌的, 暴力先贴好这些情况,然后再算有几种。

code

E 据说是树链剖分,没学过,明天学习一下再放上来。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: