Codeforces Round #807 (Div. 2) 总结

比赛地址

比赛情况

排名:816 / 23280
AC:4 / 6

题目分析

A

先排序,最优策略显然是第1个人和第 n+1 个人,第2个人和第 n+2 个人,一直到第 n 个人和第 2n 个人,然后判断是否存在不符合的情况

B

显然我们希望每一次都 j=1,但因为有0的存在,所以我们需要把0变成1

所以答案为 i=1n1ai 加上第一个非0的数的地方开始到 n1 区间里0的个数

C

先计算出它在哪一段,然后看一下其对应位置,然后重复操作

D

可以发现,无论怎么变,就是把连续的1或0缩短或扩长,不能消灭

既然如此,先判左右端点,然后计算连续1个数是否相等,然后每个连续1都必须移动到对应位置,规则是左端点移+右端点移,要注意的是,如果没空间可移还是不行

赛后总结

总得还行,但D题速度不够快,下了小分

先做A,数组开小,WA×1,5min时过

B看完样例后大胆猜了个结论,然后11min时过了

C思路很明显,但一开始没想到怎么打,21min时过

D思路一开始想不到,在纸上推了半小时才有思路

然后死活调不出,调出一个又一个,一直WA

最后69min时弃了,之后机械重复阅读代码找错误

91min时想着不管了,开个long long,开大数组交上去,然后就过了


赛后看D发现真要long long,赛时没分析出

posted @   zhangtingxi  阅读(49)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
点击右上角即可分享
微信分享提示