【bzoj3687】简单题
#3687. 简单题
题目描述
小呆开始研究集合论了,他提出了关于一个数集四个问题:
1.子集的异或和的算术和。
2.子集的异或和的异或和。
3.子集的算术和的算术和。
4.子集的算术和的异或和。
目前为止,小呆已经解决了前三个问题,还剩下最后一个问题还没有解决,他决定把
这个问题交给你,未来的集训队队员来实现。
输入格式
第一行,一个整数n。
第二行,n个正整数,表示01,a2….,。
输出格式
一行,包含一个整数,表示所有子集和的异或和。
样例
样例输入
1 3
样例输出
数据范围与提示
【样例解释】
6=1 异或 3 异或 (1+3)
【数据规模与约定】
ai >0,1<n<1000,∑ai≤2000000。
另外,不保证集合中的数满足互异性,即有可能出现Ai= Aj且i不等于J
题解:
自己异或两次的话就没有了。。。。。
异或背包 , bitset优化一下;
复杂度: $O(\frac{n \sum a_{i} } {64} $
反正bitset的复杂度比较玄学吧。。。。。。。。
1 #include<cstdio> 2 #include<iostream> 3 #include<algorithm> 4 #include<cstring> 5 #include<queue> 6 #include<cmath> 7 #include<vector> 8 #include<stack> 9 #include<map> 10 #include<set> 11 #include<bitset> 12 #define Run(i,l,r) for(int i=l;i<=r;i++) 13 #define Don(i,l,r) for(int i=l;i>=r;i--) 14 #define ll long long 15 #define ld long double 16 #define inf 0x3f3f3f3f 17 using namespace std; 18 int n; 19 bitset<2000100>f; 20 int main(){ 21 freopen("in.in","r",stdin); 22 freopen("out.out","w",stdout); 23 scanf("%d",&n); 24 int x , sum=0; 25 //f.reset(); 26 f[0]=1; 27 Run(i,1,n){ 28 scanf("%d",&x); 29 f^=f<<x; 30 sum += x; 31 } 32 int ans=0; 33 Run(i,1,sum){ 34 if(f[i])ans^=i; 35 } 36 cout<<ans<<endl; 37 return 0; 38 }//by tkys_Austin;
View Code
转载于:https://www.cnblogs.com/Paul-Guderian/p/9901960.html
【bzoj3687】简单题相关推荐
- bzoj3687简单题*
bzoj3687简单题 题意: 给个集合,求所有子集的元素和的异或和.集合元素个数≤1000,整个集合的元素和≤2000000 题解: 用bitset维护每个子集元素和的个数是奇数还是偶数.每次读入一 ...
- 【bitset乱搞】BZOJ3687 简单题
题面在这里 最喜欢这种乱搞题了 因为异或两次就等于没有异或 所以只需要记录不同算术和的奇偶即可 用一个bitset存 假设已经统计好了前面一部分算术和,新加一个x 那么每个数加x或不加,新的bitse ...
- 算法复习——bitset(bzoj3687简单题)
题目: Description 小呆开始研究集合论了,他提出了关于一个数集四个问题: 1.子集的异或和的算术和. 2.子集的异或和的异或和. 3.子集的算术和的算术和. 4.子集的算术和的异或和. ...
- Bzoj3687简单题(bitset)
题意 给定一个含nnn(n<1000n<1000n<1000)个正整数(Σa\Sigma{a}Σa≤2e6≤2e6≤2e6)的集合,求其子集和的异或和. 思路 枚举子集显然是会超时的 ...
- HDU 排名(简单题)
好久没在oj上做题了,刚开始第二天做一道简单题的心得记录. 1 #include <cstdio> 2 #include <cstring> 3 #include <st ...
- (每日一题)CF1139D Steps to One 2021年天梯赛 L3-3 可怜的简单题(期望,莫比乌斯反演,杜教筛)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 一周连考三门,人都没了 Weblink 2021年天梯赛 L3-3 可怜的简单题 CF1139D Pr ...
- 【bzoj2751】[HAOI2012]容易题(easy) 数论,简单题
Description 为了使得大家高兴,小Q特意出个自认为的简单题(easy)来满足大家,这道简单题是描述如下: 有一个数列A已知对于所有的A[i]都是1~n的自然数,并且知道对于一些A[i]不能取 ...
- 小M的简单题(easy)
小M的简单题(easy) 时间限制:3s 内存限制:128MB [题目描述] 小M是某知名高中的学生,有一天,他请他的n个同学吃苹果,同学们排成一行,且手中已经有一些苹果.为了表示他的大方,有时他会给 ...
- Loj 【CQOI 2006】简单题,mmp
#10117. 「一本通 4.1 练习 2」简单题 题目描述 题目来源:CQOI 2006 有一个 nnn 个元素的数组,每个元素初始均为 000.有 mmm 条指令,要么让其中一段连续序列数字反 ...
最新文章
- 【C++】【九】栈的应用
- 诺基亚主导Windows Phone手机市场 前景仍然堪忧
- Android-Spinner下拉列表Demo
- 从RocketMQ看长轮询(Long Polling)
- 成功解决利用pandas输出DataFrame格式数据表时没有最左边的索引编号(我去,这个问题折腾了我半个多小时)
- 解决为什么导入了tomcat进入myeclipse却在server中找不到
- 机器学习入门笔记(五):决策树
- hibernate 框架学习笔记
- golang之strings
- 仿微信实现拍摄视频,实现点击无声,自动录制
- 计算机技术在图形图像处理中的应用,计算机图形图像处理技术综述
- 光电式液位传感器和电容式液位传感器的区别
- 手把手教你用小米手机OTG功能连接打印机
- 介绍一个开源博客项目并部署到Nginx服务器
- 11091 最优自然数分解问题
- win11本地用户和组找不到的解决办法
- 转:信号量semphore
- 中医药大学远程教育计算机,北京中医药大学远程教育计算机基础(2008版) 第6次...
- clap与slap_clap什么意思(slap与clap的区别)
- PaddleOCR的表格结构识别演示
热门文章
- 如何使用智能手机控制PlayStation 4
- 无盘系统对服务器的要求,无盘服务器配置要求高?两千的主机就能带100台客户机你信吗?-服务器设置...
- python debugger extension_Pykd——Python extension for WinDbg
- Java类加载流程趣谈
- matlab iri模型,IRI2012电离层模型 matlab代码
- 不能初始化数据库支持endnote_EndNote正确恢复数据库方法 | 科研动力
- Linux从入门到精通的总结
- 计算机二级office的考试内容,计算机二级office考试内容有啥
- VB.NET绘图8---总结
- 即时聊天工具二次开发