hihoCoder1509 : 异或排序
来源:互联网 发布:windows services.msc 编辑:程序博客网 时间:2024/06/10 19:34
简述
这题很有趣的
随便打两个二进制数
第三行是下标,方便描述。
二进制数比较肯定是字典序,从最高位开始比较,直到遇到第一个不一样的位,这个位上哪个数等于
想要构造一个
那么就每两个相邻的数搞一搞,如果有冲突就直接输出
代码
//数学#include <cstdio>#include <algorithm>#define maxn 100#define ll long longusing namespace std;ll a[maxn], N, cnt[maxn];int main(){ ll i, j, last, now, ans=1; scanf("%lld%lld",&N,&last); for(i=0;i<=59;i++)cnt[i]=-1; for(i=2;i<=N;i++,last=now) { scanf("%lld",&now); for(j=59;j>=0;j--) if((last^now)&(1ll<<j)) { if(last&(1ll<<j)) { if(cnt[j]==-1)cnt[j]=1; if(cnt[j]==0){printf("0");return 0;} } else { if(cnt[j]=-1)cnt[j]=0; if(cnt[j]==1){printf("0");return 0;} } break; } } for(i=0;i<=59;i++)if(cnt[i]==-1)ans<<=1; printf("%lld",ans); return 0;}
0 0
- hihoCoder1509 : 异或排序
- hihocoder 1509 异或排序(模拟)
- hihocoder 1509 异或排序 二进制思维
- 集合或数组排序
- C语言 - 选择排序中的--异或交换--问题分析
- 选择排序算法 及 异或交换易出错陷阱
- iOS NSMutableDictionary key排序 或NSMutableArray排序
- JAVA select 或 sort 排序
- Java LIST 或数组排序
- Javascript 排序数组或对象
- Hashmap按键或值排序
- 与, 或, 异或
- POJ 2503 Babelfish(map或hash或排序二分)
- HDU 1394 暴力 或 归并排序 或 线段树
- 在冒泡排序中,用异或的方式对数组元素的位置互换
- 直接选择排序 (异或swap两个数存在陷阱)
- 黑马程序员---------异或在处理排序时的小问题
- BZOJ 2460: [BeiJing2011]元素 排序,线形基,异或消元
- [Java] 的四种引用,强弱软虚,用到的场景
- 【笔记】Linux网络配置及远程连接
- angularjs中,获取默认选中的单选按钮的value
- 【JavaScript】(7)js中自定义对象的方式(模拟Java中面向对象建模)
- 面向对象-接口
- hihoCoder1509 : 异或排序
- core文件生成时自动压缩
- KDC与CA的区别
- react demo6 (设置组件自身属性this.props)
- 将mpts格式点云转换为ply和pcd格式
- 循环链表实现约瑟夫问题
- 不要62
- Unity常用脚本类继承关系图
- Problem D: 字符类的封装