关注
//#pragma comment(linker, "/STACK:1024000000,1024000000")
#include <algorithm>
#include <cctype>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iomanip>
#include <iostream>
#include <map>
#include <queue>
#include <string>
#include <set>
#include <vector>
using namespace std;
#define pr(x) cout << #x << " = " << x << " "
#define prln(x) cout << #x << " = " << x << endl
const int N = 1e5 + 10, INF = 0x3f3f3f3f, MOD = 1e9 + 7;
typedef long long LL;
void fwtXor(LL* a, int len) {
if(len == 1) return;
int h = len >> 1;
fwtXor(a, h);
fwtXor(a + h, h);
for(int i = 0; i < h; ++i) {
LL x1 = a[i];
LL x2 = a[i + h];
a[i] = (x1 + x2);
a[i + h] = (x1 - x2);
}
}
void ifwtXor(LL* a, int len) {
if(len == 1) return;
int h = len >> 1;
for(int i = 0; i < h; ++i) {
// y1=x1+x2
// y2=x1-x2
LL y1 = a[i];
LL y2 = a[i + h];
a[i] = (y1 + y2) / 2;
a[i + h] = (y1 - y2) / 2;
}
ifwtXor(a, h);
ifwtXor(a + h, h);
}
LL n, m;
const int C = 1 << 17;
LL cnt[C];
int main() {
ios_base::sync_with_stdio(0);
cin >> n >> m;
for(int i = 1; i <= n; ++i) {
int x; cin >> x;
++cnt[x];
}
fwtXor(cnt, C);
for(int i = 0; i < C; ++i) cnt[i] *= cnt[i];
ifwtXor(cnt, C);
cnt[0] -= n;
for(int i = 0; i < C; ++i) cnt[i] >>= 1;
LL ans = 0;
for(int i = m + 1; i < C; ++i) ans += cnt[i];
cout << ans << endl;
return 0;
}
用FWT过了,这题应该是需要字典树做。
查看原帖
点赞 2
相关推荐


阿里云
| 实习
| 超多精选岗位
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 面试大厂反拷打指南(字节&腾讯)1.9W
- 2... 屠龙少年终成恶龙 一些对于过往的碎碎念4195
- 3... 985学长的春招补漏攻略3562
- 4... 实习三个月就转正,我的答辩思路全解3505
- 5... 腾讯IEG-Level Infinite 游戏国际发行-数据和技术支持团队 后台开发实习一面凉经3491
- 6... 要钱后续:钱要到了,但是领导态度怪怪的🥲3244
- 7... QQ 后台开发 一面凉经2870
- 8... 字节支付业务一二面(已挂)2702
- 9... 小米新媒体运营面试复盘,HR面前孔雀开屏。。2589
- 10... 春招忏悔录2261
正在热议
更多
# 腾讯求职进展汇总 #
330741次浏览 2617人参与
# 非技术岗投递进展 #
110114次浏览 839人参与
# 掌阅春招 #
93940次浏览 573人参与
# 如果公司给你放一天假,你会怎么度过? #
7899次浏览 79人参与
# 一人分享一句让你在秋招振作起来的话 #
54711次浏览 554人参与
# 90后北漂现状 #
18487次浏览 176人参与
# 25届如何提前做秋招准备? #
148638次浏览 2344人参与
# 面试被问到期待薪资该怎么回答? #
26982次浏览 173人参与
# 实习生应该准时下班吗 #
182687次浏览 1213人参与
# 你的领导最像哪种动物,为什么? #
9409次浏览 93人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
21483次浏览 422人参与
# 工作中哪个瞬间让你想离职 #
21672次浏览 158人参与
# 你知道哪些职场黑话? #
22407次浏览 183人参与
# 建信金科工作体验 #
12708次浏览 47人参与
# 如何缓解入职前的焦虑 #
144634次浏览 1159人参与
# 秋招拿一个offer可以躺平吗 #
128197次浏览 888人参与
# 工作中,你有没有遇到非常爱骂人的领导? #
14523次浏览 118人参与
# 国央企薪资爆料 #
71717次浏览 506人参与
# 视觉/交互/设计百问百答 #
35230次浏览 397人参与
# 如何排解工作中的焦虑 #
115980次浏览 1305人参与
# 硬件人的简历怎么写 #
242411次浏览 2825人参与