摘要: 例1:打砖块这道题的一个非常重要的细节是:只要子弹打光,就必须结束,无论是否还有可以打到的有奖励子弹的砖块。也就是说,有奖励子弹的砖块不等价于不耗费子弹就能获得分数。就是因为这个细节,我们需要双重递推。设f[i][j]表示第i列打j下能获得的分数,g[i][j]表示第i列打j下且第j下不能接着打有奖... 阅读全文
posted @ 2015-12-11 23:09 Armeria 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 这题就是个裸的线段树。。但细节容易想错。。题意:一个全0的序列,m次操作,每次给出一个区间[l,r)和一个值v,将该区间内所有小于等于v的数全部修改为v。求总的修改次数。怎么做呢?一开始我是这么做的:开一个线段树,每个节点维护一个值:该区间内的元素的值——如果该区间内元素值不同,则置为-1,... 阅读全文
posted @ 2015-12-11 22:46 Armeria 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 本题是一道树状数组的入门题。直接统计比赛场数并不好办,我们采用枚举裁判的方法。考虑从左到右第i个人当裁判的情形,需要统计的是前i-1个人和后n-i个人中能把第i个人的技能值“夹”在中间的情况数。注意可能是前大后小,也可能是前小后大。由于这些选手的技能值各不相同,所以我们在从左到右扫描的过程中,可维护... 阅读全文
posted @ 2015-12-11 22:34 Armeria 阅读(512) 评论(0) 推荐(0) 编辑