关注
请问为何统计不重复元素个数的时候,这样写就错了。 #include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
const int maxn = 2e5 + 5;
#define lowbit(x) (x)&(-x)
int a[maxn];
int main() {
ios;
int n; cin >> n; ll ans;
for (int i = 0; i < n; ++i) cin >> a[i];
sort(a, a + n);
// int tot = unique(a, a + n) - a;
int v1 = 0, v0 = 0x7fffffff;
for (int i = 0; i < n; ++i) {
v1 |= a[i];
v0 &= a[i];
}
/*int tot = 0;
for (int i = n - 1; i >= 0; --i)
tot += (a[i] != a[i + 1]);*/
int tot = unique(a, a + n) - a; // 这里--------------为啥这么写错了
// int k = lowbit(v1 ^ v0);
for (int i = 0; i <= 30; ++i) {
int cur = 1 << i;
if (cur & (v1 ^ v0)) {
ans = 1LL * cur * (tot - 1); //这里------为何在这里输出ans就错了,放在最后才能ac
break;
}
}
cout << ans << endl;
}
查看原帖
点赞 3
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 国企还是互联网,你怎么选? #
122269次浏览 943人参与
# 找工作,行业重要还是岗位重要? #
8212次浏览 105人参与
# 五一之后,实习真的很难找吗? #
46625次浏览 335人参与
# 盲审过后你想做什么? #
12905次浏览 115人参与
# 小厂实习有必要去吗 #
42309次浏览 260人参与
# 领导秒批的请假话术 #
10137次浏览 76人参与
# 设计人如何选offer #
98517次浏览 690人参与
# 外包能不能当跳板? #
22241次浏览 191人参与
# 五一假期,你打算“躺”还是“卷”? #
32730次浏览 446人参与
# 考研可以缓解求职焦虑吗 #
21417次浏览 252人参与
# 如果校招重来我最想改变的是 #
245271次浏览 2781人参与
# 面试等了一周没回复,还有戏吗 #
115857次浏览 1078人参与
# 大疆的机械笔试比去年难吗 #
69700次浏览 603人参与
# 硬件人,你被哪些公司给挂了 #
46847次浏览 724人参与
# 如果有时光机,你最想去到哪个年纪? #
43411次浏览 770人参与
# 找工作前vs找工作后的心路变化 #
7231次浏览 64人参与
# 秋招前后对offer的期望对比 #
271823次浏览 2075人参与
# 面试中,你被问过哪些奇葩问题? #
63614次浏览 777人参与
# 写简历别走弯路 #
714712次浏览 7850人参与
# 一句话证明你在找工作 #
291579次浏览 2389人参与