BZOJ 3687: 简单题 bitset
3687: 简单题
Time Limit: 10 Sec  Memory Limit: 512 MB
[Submit][Status][Discuss]
Description
小呆开始研究集合论了,他提出了关于一个数集四个问题:
1.子集的异或和的算术和。
2.子集的异或和的异或和。
3.子集的算术和的算术和。
4.子集的算术和的异或和。
    目前为止,小呆已经解决了前三个问题,还剩下最后一个问题还没有解决,他决定把
这个问题交给你,未来的集训队队员来实现。
Input
第一行,一个整数n。
第二行,n个正整数,表示01,a2….,。
Output
一行,包含一个整数,表示所有子集和的异或和。
Sample Input
1 3
Sample Output
HINT
【样例解释】
6=1 异或 3 异或 (1+3)
【数据规模与约定】
ai >0,1<n<1000,∑ai≤2000000。
另外,不保证集合中的数满足互异性,即有可能出现Ai= Aj且i不等于J
Source
#include<bits/stdc++.h> using namespace std; const int MAXN = ;
const int MAXS = ;
bitset<MAXS> s;
int n; int main() {
scanf("%d", &n);
s.set();
for (int i = ; i <= n; ++i) {
int x;
scanf("%d", &x);
s ^= (s << x);
}
long long ans = ;
for (int i = ; i < MAXS; ++i) {
if (s[i]) {
ans ^= (long long)i;
}
}
cout << ans << "\n";
return ;
}
BZOJ 3687: 简单题 bitset的更多相关文章
- bzoj 3687 简单题——bitset
		
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3687 关于 bitset :https://blog.csdn.net/snowy_smil ...
 - [bzoj 3687]简单题 bitset的运用
		
题意 给定一个正整数集,求所有子集算术和的异或和 题解 每次加入一个元素x,用原集合a xor (a<< x) 然后每一个值统计一下 bitset看起来很优越,是一个能位运算的布尔数组 ...
 - BZOJ 3687: 简单题(dp+bitset)
		
传送门 解题思路 设\(f(i)\)表示和为\(i\)时的方案数,那么转移方程为\(f(i)+=f(i-x)\),\(x\)为当前枚举到的数字,这样做是\(O(n\sum a_i)\)的,考虑优化.发 ...
 - BZOJ 3687 简单题
		
bitset维护某个和是否存在. bit<<x:所有子集的和+x. #include<iostream> #include<cstdio> #include< ...
 - 3687: 简单题(bitset)
		
3687: 简单题 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 700 Solved: 319[Submit][Status][Discuss] ...
 - BZOJ 2683: 简单题
		
2683: 简单题 Time Limit: 50 Sec Memory Limit: 128 MBSubmit: 913 Solved: 379[Submit][Status][Discuss] ...
 - bzoj 4066: 简单题 kd-tree
		
4066: 简单题 Time Limit: 50 Sec Memory Limit: 20 MBSubmit: 234 Solved: 82[Submit][Status][Discuss] De ...
 - BZOJ 2683: 简单题(CDQ分治 + 树状数组)
		
BZOJ2683: 简单题(CDQ分治 + 树状数组) 题意: 你有一个\(N*N\)的棋盘,每个格子内有一个整数,初始时的时候全部为\(0\),现在需要维护两种操作: 命令 参数限制 内容 \(1\ ...
 - BZOJ 2683: 简单题 [CDQ分治]
		
同上题 那你为什么又发一个? 因为我用另一种写法又写了一遍... 不用排序,$CDQ$分治的时候归并排序 快了1000ms... #include <iostream> #include ...
 
随机推荐
- OnApplicationFocus & OnApplicationPause &时间戳
			
锁屏.切到后台 程序强制暂停时使用 private long leaveTime; private void OnApplicationFocus(bool focus) { if (focus==f ...
 - javascript最全最好的判断数组的方法
			
var arr = [1,2,3,1]; var arr2 = [{ abac : 1, abc : 2 }]; function isArrayFn(value){ if (typeof Array ...
 - calcOpticalFlowPyrLK
			
void calcOpticalFlowPyrLK( InputArray prevImg, InputArray nextImg, ...
 - 学习笔记CB012: LSTM 简单实现、完整实现、torch、小说训练word2vec lstm机器人
			
真正掌握一种算法,最实际的方法,完全手写出来. LSTM(Long Short Tem Memory)特殊递归神经网络,神经元保存历史记忆,解决自然语言处理统计方法只能考虑最近n个词语而忽略更久前词语 ...
 - 关于pycharm中缩进、粘贴复制等文本编辑功能部分失效的解决办法
			
有可能是同时安装了vim,冲突导致: 在seetings中点击Plugins,搜索vim卸载后功能恢复
 - car的旅行路线
			
https://www.luogu.org/problemnew/show/P1027 题目描述 又到暑假了,住在城市A的Car想和朋友一起去城市B旅游.她知道每个城市都有四个飞机场,分别位于一个矩形 ...
 - 【linux日常】 ACL权限管理
			
ACL ((Access Control Lists) setfacl命令 这里引用一个非常详细的命令介绍. 要点: getfacl -R 递归获取acl权限,可以存储为文件以备还原 g ...
 - java前台线程和后台线程
			
main()函数即主函数,是一个前台线程,前台进程是程序中必须执行完成的,而后台线程则是java中所有前台结束后结束,不管有没有完成,后台线程主要用与内存分配等方面. ...
 - DEX: Deep EXpectation of apparent age from a single image 论文阅读
			
来自:IMDB-WIKI - 500k+ face images with age and gender labels https://data.vision.ee.ethz.ch/cvl/rrot ...
 - nil和Nil及NULL的区别(仅作记录)
			
今天在研究红黑树的时候一直提到一个NIL节点,百度了一下,这里仅作记录 nil是一个对象值,如果要把一个对象设置为空的时候就用nil.Nil是一个类对象的值,如果要把一个Class类型的对象设置为空的 ...