【问题】
1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次。 每个数组元素只能访问一次,设计一个算法,将它找出来;不用辅助存储空间,能否设计一个算法实现?
【代码】
#include
#include
#include
/*根据异或法的计算方式,每两个相异的数执行异或运算之后,结果为1;
每两个相同的数异或之后,结果为0,任何数与0异或,结果...
分类:
其他好文 时间:
2014-08-15 19:40:49
阅读次数:
227
当然了,O(1)空间复杂度是必须的...先看一个简单版:求出一个序列中一个只出现一次的数COJ 1217 奇数个的那个数http://122.207.68.93/OnlineJudge/problem.php?id=1217我们知道任意两个相同的数 异或结果为0 任何数与0异或结果是其本身 异或运算...
分类:
其他好文 时间:
2014-08-15 17:21:49
阅读次数:
194
根据C语言教学书上的示例编写,主要破解access的密码,通过异或算法,支持access2000和access2003,其他版本的没经过测试,下面是具体代码:#include main(){FILE *fp;char mm0[40],mm1[40],mm2[40];int i,k;clrscr();...
分类:
数据库 时间:
2014-08-14 23:45:16
阅读次数:
373
61.找出数组中两个只出现一次的数字(数组)题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是 O(n),空间复杂度是 O(1)。思路:瞄到了一眼提示,说是位运算。根据异或的运算性质:a ⊕ b ⊕ a = b把所有的数字都异或一遍得到...
分类:
其他好文 时间:
2014-08-14 19:23:49
阅读次数:
188
题意:有一个集合和一个目标态goal,现在的状态是X=0,现在在集合中有一些数,经过每次X=X|a[i] 这种异或运算后,能使得X=goal,即达到目标态。问:最少删除集合中多少个元素,使得初始X=0,不能达到目标态。思路:SRM600 #div2 的A题做了好一会儿,主要是不知道怎么直接计算出那个...
分类:
其他好文 时间:
2014-08-14 16:33:58
阅读次数:
198
思路:各种状态转移统计一下,然后乘啊乘。G++T了,C++过了。这里解释下吧:a[i][j]代表前i个中包含第i个且异或值为j的集合的个数b[i][j]代表前i个全部的异或值为j的集合的个数(与a不同,这里包含了包含第i个和不包含第i的情况)c[i][j]代表第i个到最后一个中,包含第i个且 与运算...
分类:
其他好文 时间:
2014-08-14 10:41:18
阅读次数:
226
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=744标准水题目。。找规律即可。。题解:找规律水题,任取两组数即可,如4,8。计算得这个区间异或最大值为7^8=15=(1111)2=2^4-1;再任意找一组数2,6,计算得这个区间异或最大值...
分类:
其他好文 时间:
2014-08-13 12:33:46
阅读次数:
156
Exclusive-OR
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2177 Accepted Submission(s): 603
Problem Description
You are not gi...
分类:
其他好文 时间:
2014-08-12 22:04:02
阅读次数:
267
http://poj.org/problem?id=3225题意:对集合进行交、并、差、异或四种操作,输出几步操作的之后的集合。U [a,b] :可以将[a,b]全部置为1; I [a,b] :可以将[a,b]之外的全部置为0; S-[a,b] :将[a,b]全部置为0; [a,b]-s :将[a....
分类:
其他好文 时间:
2014-08-12 00:04:43
阅读次数:
352
import osimport sysimport structdef enc(path, key): path_ret = "" for i in range(0, len(path)/4): path_ret += struct.pack(">> ===========...
分类:
编程语言 时间:
2014-08-11 11:27:22
阅读次数:
2362