ZOJ
来源:互联网 发布:淘宝350客户端下载 编辑:程序博客网 时间:2024/06/05 17:29
这个题主要思路就是把每个数的二进制存到一个数组里存起来,因为瞎搞,瞎爆就是超时,当时在场上没做出来,后来看到题解后发现很简单,就是比较考验思路,当然我很菜,在场上没做出来。
#include<algorithm>#include<cstdio>#include<cstring>#include<queue>#include<stack>#include<set>#include<map>#include<iostream>#include<string>using namespace std;const int maxn = 100000 + 10;int b[50], a[maxn];void decide(int x){ int l = 31; while(l >= 0) { if(x & (1 << l)) { b[l]++; return; } l--; } return;}int main(){ int T; cin >> T; while(T--) { int N; memset(b, 0, sizeof(b)); cin >> N; for(int i = 0; i < N; i++) { scanf("%d", &a[i]); decide(a[i]); } int ans = 0; for(int i = 0; i < N; i++) { int l = 31; while(l >= 0) // 判断从第几位开始数字为1 { if((a[i] & (1 << l))) break; l--; } while(l >= 0) // 判断哪位为0; { if(!(a[i] & (1 << l))) { ans += b[l]; } l--; } } cout << ans << endl; } return 0;}
0 0
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- BeanUtils组件使用小指南
- 你想要的线程池知识,都在这里
- 认识敏捷开发
- Python自动化测试工具Splinter简介和使用实例
- 基于OpenCV实现二值图细化,骨骼化并求出端点和交叉点
- ZOJ
- YOLO源码详解(一)-训练
- 总结下这几年在文本挖掘领域的一些技术积累
- java中运算符操作数表达式语句使用详解
- 把编译信息放在 Launch Icon 上
- prz
- ZOJ-1197-Sorting Slides【二分图匹配】【拓扑排序】
- 观察者模式
- JZOJ1491.2017.04.02【NOIP 普及组】模拟赛C组 T3打鼹鼠