BZOJ - 3687
Description
小呆开始研究集合论了,他提出了关于一个数集四个问题:
1.子集的异或和的算术和。
2.子集的异或和的异或和。
3.子集的算术和的算术和。
4.子集的算术和的异或和。
目前为止,小呆已经解决了前三个问题,还剩下最后一个问题还没有解决,他决定把
这个问题交给你,未来的集训队队员来实现。
回到顶部
Input
第一行,一个整数n。
第二行,n个正整数,表示01,a2….,。
回到顶部
Output
一行,包含一个整数,表示所有子集和的异或和。
回到顶部
Sample Input
2
1 3
回到顶部
Sample Output
6
如果我们能算出每种方案和的个数,那么我们就可以做出来了。
其次,我们可以想到我们其实不在乎具体多少个,只在乎奇偶,因为偶数异或没有影响。
所以我们求每种方案的奇偶性。直接dp复杂度太高,我们可以用bitset优化。
每次对全集合转移,s = s ^ ( 1 << x ) 。
AC代码:
#pragma GCC optimize("-Ofast","-funroll-all-loops")
#include<bits/stdc++.h>
//#define int long long
using namespace std;
const int N=2e5+10;
int n,res; bitset<N> bit;
signed main(){cin>>n; bit[0]=1;for(int i=1,x;i<=n;i++){cin>>x; bit^=(bit<<x);}for(int i=0;i<N;i++) if(bit[i]) res^=i;cout<<res;return 0;
}
BZOJ - 3687相关推荐
- BZOJ 3687 简单题
3687: 简单题 Time Limit: 10 Sec Memory Limit: 512 MB Submit: 1073 Solved: 518 [Submit][Status][Discus ...
- bzoj 3687: 简单题
2333,昨天模拟赛第一题死都想不出怎么优化tarjan,然而正解是一个kora***什么什么的东西,就是正反两遍dfs,然后这个算法求强联通分量的话,是可以用bitset来优化一下的(只考虑点). ...
- 【BZOJ 3687】简单题
[题目] 题目描述: 小呆开始研究集合论了,他提出了关于一个数集四个问题: 子集的异或和的算术和. 子集的异或和的异或和. 子集的算术和的算术和. 子集的算术和的异或和. 目前为止,小呆已经解决了前三 ...
- BZOJ.1558.[JSOI2009]等差数列(线段树 差分)
BZOJ 洛谷 首先可以把原序列\(A_i\)转化成差分序列\(B_i\)去做. 这样对于区间加一个等差数列\((l,r,a_0,d)\),就可以转化为\(B_{l-1}\)+=\(a_0\),\(B ...
- S-T平面图中利用最短路求最小割(BZOJ 1001)
BZOJ 1001: [BeiJing2006]狼抓兔子 最小割 题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1001 现在小朋友们最喜欢 ...
- BZOJ 1124: [POI2008]枪战Maf(构造 + 贪心)
题意 有 \(n\) 个人,每个人手里有一把手枪.一开始所有人都选定一个人瞄准(有可能瞄准自己).然后他们按某个顺序开枪,且任意时刻只有一个人开枪. 因此,对于不同的开枪顺序,最后死的人也不同. 问最 ...
- BZOJ 2957楼房重建
传送门 线段树 //Twenty #include<cstdio> #include<cstdlib> #include<iostream> #include< ...
- BZOJ.5249.[九省联考2018]iiidx(贪心 线段树)
BZOJ LOJ 洛谷 \(d_i\)不同就不用说了,建出树来\(DFS\)一遍. 对于\(d_i\)不同的情况: Solution 1: xxy tql! 考虑如何把这些数依次填到树里. 首先对于已 ...
- bzoj 4871: [Shoi2017]摧毁“树状图”
4871: [Shoi2017]摧毁"树状图" Time Limit: 25 Sec Memory Limit: 512 MB Submit: 53 Solved: 9 [Su ...
最新文章
- MyEclipse10整合Axis2插件
- AcWing算法基础课 Level-2 第二讲 数据结构
- Boost:bind绑定boost::apply的测试程序
- L2-005 集合相似度 (25分)
- LeetCode 962. 最大宽度坡(单调栈)
- 主板刷安卓 联发科_魅蓝2—来自2015年的青年良品,在2020刷个安卓9.0,起死回生(附教程及资源)...
- 前端开源项目周报0103
- python分词、词频统计以及根据词频绘制词云
- 将多个Bip动作合成一个
- 两台计算机如何共享文档,两台电脑如何共享文件
- chrome是什么?
- 利用Yocto构建嵌入式Linux教程3_1--Yocto构建系统的配置文件
- 为什么误差采取平方和形式
- 标签体系下的用户画像建设小指南
- 闭式系统蒸汽管径推荐速度_蒸汽管道的设计选型
- Controlling GC pauses with the GarbageFirst Collector
- APP运营推广那点事
- linux怎么使用4g模块的网络,在ARM-linux上实现4G模块PPP拨号上网(示例代码)
- 关于printf与scanf的碎碎念
- 海康威视视频监控demo 源码+库文件
热门文章
- 电脑鼠标在右键时一直转圈不显示解决措施
- 阿里云的这群疯子 (共勉)
- unity上传头像_unity3d 上传本地PC图片
- officemix安装 0x80091007 哈希数值不正确
- 决策树ID3代码(Python)
- LT8522EX 是 Lontium 的矩阵开关芯片基于两路输入,输出 (VGA 和 HDMI)
- 小米手机如何关闭系统扩展服务器,小米手机如何关闭广告?MIUI12系统这样操作就够了...
- matlab文献资料,matlab文献资料查找方法及资源汇总
- kali系统破解WiFi密码(二)
- 低代码:正在改变软件的开发方式