码迷,mamicode.com
首页 >  
搜索关键字:异或运算    ( 502个结果
HDU 5175 Misaki's Kiss again (异或运算,公式变形)
HDU 5175 Misaki's Kiss again (异或运算,公式变形) bestcoder Valentine's Day Round b...
分类:其他好文   时间:2015-02-14 23:52:41    阅读次数:492
hdu 1524 A Chess Game (SG)
题意:在一个有向无环图上有n个顶点,每一个顶点都只有一个棋子,有两个人,每次根据这个图只能将任意一颗棋子移动一步 ,如果到某一步玩家不能移动时,那么这个人就输. 分析:本题是最典型的有向无环图的博弈,利用dfs把所有顶点的SG值都计算出来,然后对每个棋子的SG值进行异或运算,如果 为0就是先手必败,否则就是先手必胜. 如果某个人移动到出度为0的顶点,...
分类:其他好文   时间:2015-02-05 21:59:21    阅读次数:281
SGU 200 Cracking RSA (高斯消元+大数高精度)
题目地址:SGU 200 这题居然还考大数高精度。。无语。。 令有该因子偶数个为0,奇数个为1,这样就满足异或运算了,即奇+奇=偶,偶+偶=偶,奇+偶=奇。然后建立方程高斯消元求变元个数free_num,那么子集的个数就是2^free_num-1。减1是去掉0的情况。注意要用大数运算 代码如下: #include #include #include #include #includ...
分类:其他好文   时间:2015-01-30 10:47:04    阅读次数:241
程序典型面试题---数组中只出现一次的数字
题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。解法:位异或运算思路:将问题简化为除了一个数字外,其他数字都出现两次。将数组的结果异或起来,因为出现两次的数组异或结果为0,所以结果异或的结果即为出现一次...
分类:编程语言   时间:2015-01-23 16:19:05    阅读次数:129
Single Number
Given an array of integers, every element appears twice except for one. Find that single one. Note: Your algorithm should have a linear runtime complexity. Could you implement it without using ext...
分类:其他好文   时间:2015-01-14 23:01:20    阅读次数:402
C、C++ 中 |、||、&、&&、异或、~、!运算详解
由于接触比较底层的数据处理对下面用的整理(参考网络) 位运算     位运算的运算分量只能是整型或字符型数据,位运算把运算对象看作是由二进位组成的位串信息,按位完成指定的运算,得到位串信息的结果。 位运算符有:     &(按位与)、|(按位或)、^(按位异或)、~ (按位取反)。     其中,按位取反运算符是单目运算符,其余均为双目运算符。     位运算符的优先级从高到低...
分类:编程语言   时间:2015-01-14 14:22:48    阅读次数:270
异或运算实现加密解密
异或运算中,如果某个字符(或数值)x 与 一个数值m 进行异或运算得到y,则再用y 与 m 进行异或运算就可以还原为 x ,因此应用这个原理可以实现数据的加密解密功能。 加密方法的加密操作是对字符串中的每个字符进行异或运算,然后将异或运算后的字符串返回,得到密文。 根据 "字符(或数值)x 与 一个数值m 进行异或运算得到y,则再用y 与 m 进行异或运算就可以还原为 x " 原理,对密码中的每个字符进行再次异或运算,便可再次得到之前的明文信息,及达到解密的效果。 示例中,(decode(str)) 方...
分类:其他好文   时间:2015-01-03 22:28:49    阅读次数:194
C/C++ 按位与异或的几个扩展
1)如果 a^b = c 那么就有 c^b = a 以及 c^a = b (穷举法证明)此规律可以用来进行最简单的加密及解密2)另外异或运算还能实现不通过临时变量,就能交换两个变量的值(且无溢出风险) a = a ^ b; b = b ^ a; a = a ^ b;
分类:编程语言   时间:2014-12-25 22:04:33    阅读次数:170
找出三个只出现一次的数字 C语言实现
题目:一个数组中有三个数字a、b、c只出现一次,其他数字都出现了两次。请找出三个只出现一次的数字。 分析:如果我们把数组中所有数字都异或起来,那最终的结果(记为x)就是a、b、c三个数字的异或结果(x=a^b^c)。其他出现了两次的数字在异或运算中相互抵消了。 我们可以证明异或的结果x不可能是a、b、c三个互不相同的数字中的任何一个。 由于x与a、b、c都各不相同,因此x^a、x...
分类:编程语言   时间:2014-12-24 20:10:52    阅读次数:287
Java简单的加密解密算法,使用异或运算
package cn.std.util;import java.nio.charset.Charset;public class DeEnCode { private static final String key0 = "FECOI()*&<MNCXZPKL"; private sta...
分类:编程语言   时间:2014-12-22 10:54:09    阅读次数:196
502条   上一页 1 ... 42 43 44 45 46 ... 51 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!