一道趣题

来源:互联网 发布:应届生程序员面试题 编辑:程序博客网 时间:2024/05/16 05:02

之前在群上面看到一道题,题面是这样的,给你一个序列,求出有多少对点满足or起来为k。
一开始看到这道题我想到的是二进制分解k然后分类讨论分开算贡献,但是在一个地方卡住了没想出来。后来问了下学长,学长给出的答案是这样子的。我们计算非法的对数,把对答案没贡献的去掉,然后非法的一定是位置上同时出现零,然后容斥一下就好了。
数据和程序我之后再放上来,好像听说把容斥的式子写出来可以优化到nlogn。

原创粉丝点击