Wannafly挑战赛4

A(枚举)

=w=

B(枚举)

分析:

  枚举每一位,考虑每位贡献,就是相当于在一段区间内找有多少1在奇数位上,有多少个1在偶数位上,维护一下各自前缀和就行了

  时间复杂度O(32n)

C(签到)

D(dfs序+可持久化线段树/离线+线段树)

分析:

  考虑dfs序,那么对于每个询问,就是询问一段区间[l,r]内,deep值大于等于k的所有deep值的和,这就是裸的可持久化线段树

  当然也可以离线,对于每个询问[l,r,k],按左端点排序,扫描线从左往右扫,扫到左端点就把数字加入线段树,扫到右端点就查询对应询问的答案

E(二次剩余)

分析:

  (待填坑)

F(待填坑)

posted @ 2017-11-24 22:21  Chellyutaha  阅读(260)  评论(0编辑  收藏  举报