蓝桥杯第七场小白赛 4.可结合的元素对【算法赛】 知识点:lowbit

4.可结合的元素对【算法赛】 - 蓝桥云课 (lanqiao.cn) 这道题就是考知不知道lowbit()函数:

js 复制代码
#include<bits/stdc++.h>
using namespace std;
#define LL long long

int lowbit(int x)
{
  return x&-x;
}


int main()
{

  cin.tie(nullptr)->ios::sync_with_stdio(false);

   int n;cin>>n;
   vector<int>a(n+1);
   for(int i=1;i<=n;i++)
   {
     cin>>a[i];
   }

LL ans = 0;
    for (int i = 1; i <= n; ++i) {
        for (int j = i + 1; j <= n; ++j) {
            if (lowbit(a[i] + a[j]) == a[i] + a[j])ans += 1;
        }
    }

   cout<<ans<<endl;

  return 0;
}

这样写虽然可以通过但是有风险:

但是实际上是数据不强,擦着边过得,因为n最大1e5,我们用了两个for循环,已经1e10了。

另外就是ans要开long long,不开过不了:

相关推荐
_殊途41 分钟前
《Java HashMap底层原理全解析(源码+性能+面试)》
java·数据结构·算法
珊瑚里的鱼4 小时前
LeetCode 692题解 | 前K个高频单词
开发语言·c++·算法·leetcode·职场和发展·学习方法
秋说5 小时前
【PTA数据结构 | C语言版】顺序队列的3个操作
c语言·数据结构·算法
lifallen5 小时前
Kafka 时间轮深度解析:如何O(1)处理定时任务
java·数据结构·分布式·后端·算法·kafka
liupenglove6 小时前
自动驾驶数据仓库:时间片合并算法。
大数据·数据仓库·算法·elasticsearch·自动驾驶
python_tty7 小时前
排序算法(二):插入排序
算法·排序算法
然我7 小时前
面试官:如何判断元素是否出现过?我:三种哈希方法任你选
前端·javascript·算法
F_D_Z7 小时前
【EM算法】三硬币模型
算法·机器学习·概率论·em算法·极大似然估计
秋说8 小时前
【PTA数据结构 | C语言版】字符串插入操作(不限长)
c语言·数据结构·算法
凌肖战9 小时前
力扣网编程135题:分发糖果(贪心算法)
算法·leetcode