4269: 再见Xor

链接

分析:

  和SGU 275唯一不同的就是需要求出次小值,那么异或出最大值的所有元素中,找到最小的,去除即可。

代码:

 #include<bits/stdc++.h>
using namespace std;
typedef long long LL; const int N = + ;
const int m = ;
LL a[N],b[N];
int n; void build() {
for (int i=; i<=n; ++i)
for (int j=m; j>=; --j)
if ((a[i] >> j) & ) {
if (b[j]) a[i] ^= b[j];
else {
b[j] = a[i];
for (int k=j-; k>=; --k) if (b[k]&&((b[j]>>k)&)) b[j] ^= b[k];
for (int k=j+; k<=m; ++k) if ((b[k]>>j)&) b[k] ^= b[j];
break;
}
}
}
void solve() {
LL mn = 1e18,ans = ;
for (int i=; i<=m; ++i)
if (b[i]) {
ans ^= b[i];
mn = min(mn,b[i]);
}
cout << ans << " ";
ans ^= mn;
cout << ans;
}
int main() {
scanf("%d",&n);
for (int i=; i<=n; ++i) scanf("%d",&a[i]);
build();
solve();
return ;
}

最新文章

  1. MVP 实例
  2. fzu 2107 Hua Rong Dao(状态压缩)
  3. iOS UIWebView和网页的交互(OC中调执行JS)
  4. Mysql-学习笔记(==》建表修改一)
  5. MemSQL Start[c]UP 2.0 - Round 1(无聊练手B题)
  6. QStandardItemModel简单好用,QTableView带进度条
  7. Python学习之路——字符处理(二)
  8. MongoDB系列之三(副本集配置)
  9. Unity3D ——强大的跨平台3D游戏开发工具(二)
  10. hdu 1254 推箱子(搜索)
  11. 如何搭建lamp(CentOS7+Apache+MySQL+PHP)环境
  12. Android更新UI的几种方法
  13. flask token认证
  14. Mac剪切AVI视频
  15. layer弹出层不居中解决方案(转)
  16. bzoj 4585 烟火表演 - 动态规划 - 可并堆
  17. 9.Libraries and visibility 库和可见性
  18. Security6:查看授予的权限
  19. 自适应尺寸变化的meanshift跟踪
  20. API接口自动化之1 常见的http请求

热门文章

  1. 2019.03.19 ZJOI2019模拟赛 解题报告
  2. 【转】Dalvik虚拟机的启动过程分析
  3. Educational Codeforces Round 10 D. Nested Segments 【树状数组区间更新 + 离散化 + stl】
  4. 最短路算法 —— Dijkstra算法
  5. [19/03/15-星期五] 常用类_String类&amp;StringBuilder和StringBuffer类
  6. NW.js开发环境的搭建
  7. log4j+AOP 记录错误日志信息到文件中
  8. 使用classList来实现两个按钮样式的切换
  9. IP检验字段为啥只检验地址部分
  10. Rman 管理 archivelog 的命令