关注
//#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
相关推荐
点赞 评论 收藏
分享
01-13 18:33
苏州大学 前端工程师 在考古的林北很自来熟:最大的缺点还不容易吗?我最大的缺点就是,明明知道自己存在许多缺点,我却至今还不知道哪个是最大的。
行不行?不行的话再换一个:
我最大的缺点就是还没有发现我最大的优点,而我清楚的知道自己有许多优点。
投递完美世界等公司8个岗位 >
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我的2024牛客高光时刻 #
89370次浏览 1494人参与
# 求职遇到的搞笑事件 #
80938次浏览 611人参与
# 被同事甩锅了怎么办 #
14871次浏览 89人参与
# 秋招前后对offer的期望对比 #
207291次浏览 1544人参与
# 学信网能看师兄师姐就业去向了 #
191793次浏览 547人参与
# 国企是春招机械人最好的去处吗 #
13475次浏览 79人参与
# 实习,投递多份简历没人回复怎么办 #
2690271次浏览 36556人参与
# 数据人的面试交流地 #
493736次浏览 8280人参与
# 毕业租房也有小确幸 #
87681次浏览 4114人参与
# 秋招你被哪家公司挂了? #
409255次浏览 3678人参与
# 实习工作,你找得还顺利吗? #
282703次浏览 3649人参与
# 入职第三天,晒晒你的工位 #
17300次浏览 98人参与
# 面试中的破防瞬间 #
359628次浏览 3892人参与
# 我的第一份实习怎么找的 #
48172次浏览 487人参与
# 美团求职进展汇总 #
1461693次浏览 13265人参与
# 2025,我想...... #
18421次浏览 211人参与
# 运营来爆料 #
16920次浏览 202人参与
# 你上一次加班是什么时候? #
31954次浏览 266人参与
# 如果再来一次,你还会选择这个工作吗? #
386352次浏览 2453人参与
# 想实习转正,又想准备秋招,我该怎么办 #
560137次浏览 5559人参与