竞赛
考级
仔细阅读题面,不难发现,这题只有查询操作,而没有修改操作。 而前缀和刚好可以满足这个功能! 直接开三个前缀和,维护每种牛的个数即可。 比较一下时间复杂度: 树状数组、线段树:O((N+Q)logN)O((N+Q)logN)O((N+Q)logN). 前缀和:O(N+Q)O(N+Q)O(N+Q)。 而且相比树状数组、线段树,前缀和不需要专门写一大堆建树、维护、查询的函数。 以下是代码:
entj